Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. Other Discussions
  3. Clever Code
  4. AddIn Wizard and Emacs keyboard layout (VS 2005)

AddIn Wizard and Emacs keyboard layout (VS 2005)

Scheduled Pinned Locked Moved Clever Code
visual-studiohelpcsharpdatabasetools
8 Posts 5 Posters 3 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H Offline
    H Offline
    Harold Bamford
    wrote on last edited by
    #1

    I found a bizarre bug (now confirmed as a bug by Microsoft) in the AddIn Wizard. If you have selected the Emacs keyboard layout, the wizard will hang! Turns out that the wizard actually uses the VS text editors to fill in some values in a template and the script is not compatible with the Emacs layout. The fix is to just change to the default Visual Studio keyboard layout, run the Wizard, and then change back. Oddly, this bug was already in the MS bug list database, but you need to know that this is related to Emacs to find the entry. And if you know that, then you already have the workaround. Sigh.

    M PJ ArendsP 2 Replies Last reply
    0
    • H Harold Bamford

      I found a bizarre bug (now confirmed as a bug by Microsoft) in the AddIn Wizard. If you have selected the Emacs keyboard layout, the wizard will hang! Turns out that the wizard actually uses the VS text editors to fill in some values in a template and the script is not compatible with the Emacs layout. The fix is to just change to the default Visual Studio keyboard layout, run the Wizard, and then change back. Oddly, this bug was already in the MS bug list database, but you need to know that this is related to Emacs to find the entry. And if you know that, then you already have the workaround. Sigh.

      M Offline
      M Offline
      Mike Dimmick
      wrote on last edited by
      #2

      Harold Bamford wrote:

      Turns out that the wizard actually uses the VS text editors to fill in some values in a template

      Oh boy. How prone to breaking is that? I'd never write anything that fragile, at least not if there was an API available or could make one.

      Stability. What an interesting concept. -- Chris Maunder

      H 1 Reply Last reply
      0
      • M Mike Dimmick

        Harold Bamford wrote:

        Turns out that the wizard actually uses the VS text editors to fill in some values in a template

        Oh boy. How prone to breaking is that? I'd never write anything that fragile, at least not if there was an API available or could make one.

        Stability. What an interesting concept. -- Chris Maunder

        H Offline
        H Offline
        Harold Bamford
        wrote on last edited by
        #3

        Well, it apparently breaks the AddIn wizard and the MS guy also said it broke another wizard. Of course, very few people use the Emacs keyboard layout so almost nobody runs into this problem. The MS guy sent me an addin (!) to fix this problem that temporarily changes the keyboard layout to "Default" during the AddIn wizard operations, and then restores it. I haven't tried it yet as I am still working on my very first addin and haven't needed the wizard again.

        Mike Dimmick wrote:

        I'd never write anything that fragile

        I don't think that I would call it "fragile" as it is really the problem with the Emacs keyboard layout which redefines the meaning of some basic text editor operations...

        A 1 Reply Last reply
        0
        • H Harold Bamford

          I found a bizarre bug (now confirmed as a bug by Microsoft) in the AddIn Wizard. If you have selected the Emacs keyboard layout, the wizard will hang! Turns out that the wizard actually uses the VS text editors to fill in some values in a template and the script is not compatible with the Emacs layout. The fix is to just change to the default Visual Studio keyboard layout, run the Wizard, and then change back. Oddly, this bug was already in the MS bug list database, but you need to know that this is related to Emacs to find the entry. And if you know that, then you already have the workaround. Sigh.

          PJ ArendsP Offline
          PJ ArendsP Offline
          PJ Arends
          wrote on last edited by
          #4

          Harold Bamford wrote:

          Oddly, this bug was already in the MS bug list database, but you need to know that this is related to Emacs to find the entry. And if you know that, then you already have the workaround. Sigh.

          There are more things like that in the KB. I had a problem using the SetWindowPlacement API. I found a work around listed under the 3270 Applet[^] (whatever that is?). I am thinking that the KB is the biggest bug.


          You may be right
          I may be crazy
          -- Billy Joel --

          Within you lies the power for good, use it!!!

          Within you lies the power for good; Use it!

          K 1 Reply Last reply
          0
          • PJ ArendsP PJ Arends

            Harold Bamford wrote:

            Oddly, this bug was already in the MS bug list database, but you need to know that this is related to Emacs to find the entry. And if you know that, then you already have the workaround. Sigh.

            There are more things like that in the KB. I had a problem using the SetWindowPlacement API. I found a work around listed under the 3270 Applet[^] (whatever that is?). I am thinking that the KB is the biggest bug.


            You may be right
            I may be crazy
            -- Billy Joel --

            Within you lies the power for good, use it!!!

            K Offline
            K Offline
            kakan
            wrote on last edited by
            #5

            PJ Arends wrote:

            3270 Applet[^] (whatever that is?).

            3270 is an IBM mainframe terminal(console). So "3270 Applet" must be an emulator for a 3270 terminal.

            Alcohol. The cause of, and the solution to, all of life's problems - Homer Simpson

            1 Reply Last reply
            0
            • H Harold Bamford

              Well, it apparently breaks the AddIn wizard and the MS guy also said it broke another wizard. Of course, very few people use the Emacs keyboard layout so almost nobody runs into this problem. The MS guy sent me an addin (!) to fix this problem that temporarily changes the keyboard layout to "Default" during the AddIn wizard operations, and then restores it. I haven't tried it yet as I am still working on my very first addin and haven't needed the wizard again.

              Mike Dimmick wrote:

              I'd never write anything that fragile

              I don't think that I would call it "fragile" as it is really the problem with the Emacs keyboard layout which redefines the meaning of some basic text editor operations...

              A Offline
              A Offline
              Andy Brummer
              wrote on last edited by
              #6

              Harold Bamford wrote:

              I don't think that I would call it "fragile" as it is really the problem with the Emacs keyboard layout which redefines the meaning of some basic text editor operations...

              I think Mike was referring to writing code that depends on the user having a particular keyboard layout selected. Writing code that is dependent on something like that is just asking for it to break. It should be able to access all the files directly without having to deal with keyboard layouts.

              Using the GridView is like trying to explain to someone else how to move a third person's hands in order to tie your shoelaces for you. -Chris Maunder

              H 1 Reply Last reply
              0
              • A Andy Brummer

                Harold Bamford wrote:

                I don't think that I would call it "fragile" as it is really the problem with the Emacs keyboard layout which redefines the meaning of some basic text editor operations...

                I think Mike was referring to writing code that depends on the user having a particular keyboard layout selected. Writing code that is dependent on something like that is just asking for it to break. It should be able to access all the files directly without having to deal with keyboard layouts.

                Using the GridView is like trying to explain to someone else how to move a third person's hands in order to tie your shoelaces for you. -Chris Maunder

                H Offline
                H Offline
                Harold Bamford
                wrote on last edited by
                #7

                Andy Brummer wrote:

                I think Mike was referring to writing code that depends on the user having a particular keyboard layout selected. Writing code that is dependent on something like that is just asking for it to break. It should be able to access all the files directly without having to deal with keyboard layouts.

                I understand. However, I believe that the code involved (I have not seen it myself, so this is 2nd hand info) uses standard, low-level, editor commands (Edit.GoTo, Edit.Find, Edit.LineCut, whatever) which may have been redefined by the Emacs layout. Further, many people are not even aware that other keyboard layouts are available and so would not have thought to check for this. The fact is, most of the code we all write is perfect until somebody uses it in an unanticipated manner. I just don't think that being critical of somebody's work, that has survived for many years, on the basis of holier-than-thou is appropriate. I also hadn't anticipated this much of a debate! :laugh:

                A 1 Reply Last reply
                0
                • H Harold Bamford

                  Andy Brummer wrote:

                  I think Mike was referring to writing code that depends on the user having a particular keyboard layout selected. Writing code that is dependent on something like that is just asking for it to break. It should be able to access all the files directly without having to deal with keyboard layouts.

                  I understand. However, I believe that the code involved (I have not seen it myself, so this is 2nd hand info) uses standard, low-level, editor commands (Edit.GoTo, Edit.Find, Edit.LineCut, whatever) which may have been redefined by the Emacs layout. Further, many people are not even aware that other keyboard layouts are available and so would not have thought to check for this. The fact is, most of the code we all write is perfect until somebody uses it in an unanticipated manner. I just don't think that being critical of somebody's work, that has survived for many years, on the basis of holier-than-thou is appropriate. I also hadn't anticipated this much of a debate! :laugh:

                  A Offline
                  A Offline
                  Andy Brummer
                  wrote on last edited by
                  #8

                  Harold Bamford wrote:

                  I just don't think that being critical of somebody's work, that has survived for many years, on the basis of holier-than-thou is appropriate.

                  I don't anyone in this thread has had a holier-then-thou attitude. The only debate is the definition of fragile code. The way I define it is code with unnecessary dependencies on other parts of the application. In this case it is the UI of the application. A code wizard like that should just manipulate the files directly without being dependent on any kind of keyboard layout. Those extra dependencies which tend to build up over time are probably the biggest source of bugs in any application, which is why so many developers have such a dim view of them.

                  Using the GridView is like trying to explain to someone else how to move a third person's hands in order to tie your shoelaces for you. -Chris Maunder

                  1 Reply Last reply
                  0
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  • First post
                    Last post
                  0
                  • Categories
                  • Recent
                  • Tags
                  • Popular
                  • World
                  • Users
                  • Groups