Do nothing without doing anything


  • Discourse touched me in a no-no place

    @accalia said:

    i have not yet worked with one specific web application server (tomcat) is really a nitpick point here, is it not?

    No, because you claimed you use it for

    @accalia said:

    all the same things you use Eclipse for

    which you don't. All != a lot of.

    The whole point of this post

    @loopback0 said:

    I guess you're just not using your Vim "IDE" for the same things I use Eclipse

    was to acknowledge we have different use cases for IDEs and therefore we use different tools. I wasn't intending on carrying on this debate after that.

    @accalia said:

    really, i expected better of you here.

    :rofl:

    YMBNH.



  • @accalia said:

    you know... i'd actually be impressed if he managed to not only make the novel exactly 1001 pages and be a perfect palindrome

    OK, yeah. That didn't happen. But it's still a seriously amazing work of literature. Worth reading if you're into fantasy and have some time to devote to it. (It is over 1000 pages, after all...)


  • I survived the hour long Uno hand

    @Mason_Wheeler said:

    Among other things. "Typesetting" is often important to writing.

    I don't write my novels in Word anymore; it's very apt for processing business documents but not great for creative works. Lately, I use Scrivener, which -- in addition to basic text editing -- gives me tools to organize my notes, cross-reference important story points and characters, move things around when I feel like the flow works better that way, et cetera. Things that are super easy to do visually with a corkboard-style layout and would be hell to do with keyboard shortcuts.


  • FoxDev

    @loopback0 said:

    was to acknowledge we have different use cases for IDEs and therefore we use different tools.

    you mean the point i've been arguing the whole time?

    i've been arguing that ViM is an IDE, not that it is the IDE

    if you wanted to make the different use case argument you went about it in an odd way.

    of course there are different use cases! i made reference to one multiple times in this very thread! ViM is an extremely keyboard centric workflow, to the point that the mouse is not a thing at all in the interface. if your workflow needs mouse interaction than ViM is not for you!

    you asked me if i could do all the things Eclipse can do, the answer is "YES", and often in my opinion "Yes! better than Eclipse can!" The simple fact that i have not yet worked with Tomcat, does not mean that i can't, just that i haven't.


  • Discourse touched me in a no-no place

    @accalia said:

    if you wanted to make the different use case argument you went about it in an odd way.

    Is there a less odd way than this?

    @loopback0 said:

    you're just not using your Vim "IDE" for the same things I use Eclipse (or Netbeans :vomit: previously) for.

    ❓

    @accalia said:

    you asked me if i could do all the things Eclipse can do

    *BZZT* Wrong.
    I asked you if I could do them quickly in Vim.


  • FoxDev

    @loopback0 said:

    BZZT Wrong.I asked you if I could do them quickly in Vim.

    the answer is still "Yes, yes you can."


  • Java Dev

    You might be able to write your design in ViM, but the BAs/PM/fill in nontechnical person here is expecting a document according to corporate layout standards (including template chapter headers, revision history table, etc) which they can annotate using Microsoft Word.

    They may even expect to be able to pull up their previous annotations in the second version of your document.


  • Fake News



  • @Mason_Wheeler said:

    My objection to that style is, "ugly, Yoda conditionals are!"

    It took me a little while to get used to it, but I love it now. Plus I can see the check much easier when you get those horribly long convoluted statements we all love to maintain...
    if (E_FILE_NOT_FOUND == Some()->SDsdtewrtsdfg(sdrt, drtgsdert, Go(more, args)))
    (or that go on for multiple lines)



  • @dcon said:

    Plus I can see the check much easier when you get those horribly long convoluted statements we all love to maintain...
    if (E_FILE_NOT_FOUND == Some()->SDsdtewrtsdfg(sdrt, drtgsdert, Go(more, args)))
    (or that go on for multiple lines)

    If a conditional gets too big to easily read, I generally just refactor it.

    fileResult = Some()->SDsdtewrtsdfg(sdrt, drtgsdert, Go(more, args)); if (fileResult == E_FILE_NOT_FOUND)



  • @RaceProUK said:

    And if you have 'Warnings as errors' on (and if you don't, :wtf:),

    Agreed. And a pox on headers that have
    #pragma warning(disable : 4706)
    (and others) buried deep where you didn't know they existed.


  • Winner of the 2016 Presidential Election

    @Yamikuronue said:

    I suck at memorizing things

    Me too. That's why I use a custom keymap for my IDE. Every shortcut is composed of the first letter of the action and Ctrl/Alt/Shift (depending on which type of command it is), so I don't have to remember a single keyboard shortcut.

    @accalia said:

    well, yes, i'm using it for all the same things you use Eclipse for

    Does ViM have a decent graphical debugger? Just curious…

    @accalia said:

    I'm also using it for a lot more things

    Are you sure? I can send you a list of my IntelliJ plugins. I'm pretty sure there are a lot of things in there that your ViM doesn't* do.

    *Note that I didn't say couldn't

    @RaceProUK said:

    sit through a lengthy install process

    Installing and configuring IntelliJ took me about 15 minutes the first time. And I visited every single page of the settings dialog! Now it just takes me 30 seconds on a new machine: Unzip latest intellij.tar.gz, import settings.jar, done.


  • Winner of the 2016 Presidential Election

    Um… guys… I think I just managed to start my first flamewar. For the first time, I feel like a true WTDWTFer.



  • @Mason_Wheeler said:

    Ugh. If I was in a program and CTRL-C killed the program while I was obviously attempting to copy something to the clipboard, I'd be sooooo irritated!

    Luckily it doesn't kill it. 'vim', followed by ctrl+c. Cursor is still in same position.

    I do rather wish it used the standard copy/paste... But I've gotten used to the named buffer * to access the clipboard.


  • Discourse touched me in a no-no place

    @dcon said:

    LuckilyUnfortunately it doesn't kill it. 'vim'

    🐟


  • Java Dev

    @dcon said:

    I do rather wish it used the standard copy/paste... But I've gotten used to the named buffer * to access the clipboard.

    I tend to use the terminal's copy function for the system clipboard - I'm not sure whether the " buffer which works in gvim also works in command-line vim, but it definitely doesn't over SSH with x-forwarding disabled.

    And x-forwarding is and will remain disabled because certain corporate tools will attempt to start graphical tools under certain circumstances. They'll still try without a display, but I know the failure mode to be harmless, I do not dare guess what will happen if I kill whatever it spawns aver 5 minutes of not yet being functional.



  • Take the C# example; I'm sure that Delphi works the same way. You should be familiar with the "template method" design pattern. In that pattern, there is a method "A" that executes a series of steps, "B", "C", "D" and so on. Each of those methods B, C, D can be overridden in a subclass. Thus the pattern -- the bulk of the work is done by code from the base class; and the specialization occurs in the subclass by overriding B, C, D. In the case of this object, a method (B) does something in the base class, but for the implementation of the subclass, the specialization is that that method is not executed. You do that by overriding the base class's method B, and having an empty body.



  • How do you set a conditional breakpoint in Vim?

    How do you view the output of a profiler in Vim? If the profiler flags a function as taking too much time, can you just click (/activate with keyboard somehow) and jump directly to that function in the code?

    Genuinely curious.


  • FoxDev

    @blakeyrat said:

    How do you set a conditional breakpoint in Vim?

    depends on the plugin you use and the language you are debugging. for me it's db to set a breakpoint then dc <condition> to change it to conditional (dr to remove and dd to disable)

    @blakeyrat said:

    How do you view the output of a profiler in Vim? can you just click (/activate with keyboard somehow) and jump directly to that function in the code?
    depends on how you set it up. I use minibuffer to open an nested window, that lets me navigate my code and see the relevant part of the profiler output, and visa versa.

    takes a bit to get used to how minibuffer works, but a lot of the more useful plugins use it so totally worth it. Well it's worth it if you actually want to use ViM. otherwise it's kind of pointless because you won't be using ViM.



  • @accalia said:

    depends on the plugin you use and the language you are debugging.

    ... why would it? Doesn't Vim work the same for every language?

    @accalia said:

    for me it's db to set a breakpoint then dc <condition> to change it to conditional (dr to remove and dd to disable)

    Where do breakpoints get stored? Do you have to set them each time?

    @accalia said:

    I use minibuffer to open an nested window, that lets me navigate my code and see the relevant part of the profiler output, and visa versa.

    That doesn't answer my question. Is Vim smart enough to realize that the SpankFoobars() mentioned in the profiler output is also the function SpankFoobars in Project/Spanks/Foobars.cs, and link the two together?

    Since you dodged the question, I assume the answer is no.

    I don't even dare to ask about actually advanced VS features, like edit-and-continue or the pixel shader debugger!



  • @blakeyrat said:

    I don't even dare to ask about actually advanced VS features, like edit-and-continue or the pixel shader debugger!

    Has edit-and-continue ever worked?


  • FoxDev

    @blakeyrat said:

    ... why would it?

    because different plugins behave differently. it depends on which one you installed.

    @blakeyrat said:

    Where do breakpoints get stored? Do you have to set them each time?

    they are stored automatically in ~/.vimbreakpoints, unless of course i disable that globally fia my ~/.vimrc or for the session via a command.

    @blakeyrat said:

    Is Vim smart enough to realize that the SpankFoobars() mentioned in the profiler output is also the function SpankFoobars in Project/Spanks/Foobars.cs, and link the two together?
    yes it is, generally. enabling optimizations in the compiler can trip it up sometimes, but i don't find that happen very often.

    @blakeyrat said:

    edit-and-continue
    works flawlessly for interpreted languages, for compiled languages it depends on the compiler and runtime whether it's supported. In general though, yeah no. that seems to be a VS/C# exclusive in the compiled language sector.

    @blakeyrat said:

    pixel shader debugger!
    never heard of it.

    /me wanders off to google it

    oh. interesting. lots of restrictions in VS there... still pretty cool.

    not dealt with them before at all so i'm afraid i must report an inconclusive result on that one for now. but if i ever find a need for that i'm sure i'll sort something out and likely be able to report success that i can indeed do that in ViM with the appropriate plugin

    in the unlikely event that it turns out that i cannot you may of course reserve the right to act smug and shout "i told you so"



  • @jmp said:

    Has edit-and-continue ever worked?

    It's finicky, but I've worked with projects where it worked pretty reliably.



  • @accalia said:

    oh. interesting. lots of restrictions in VS there... still pretty cool.

    If you ever wonder why game developers are almost exclusively on Windows, VS is pretty much the ONLY IDE with features like that.

    @accalia said:

    in the unlikely event that it turns out that i cannot you may of course reserve the right to act smug and shout "i told you so"

    Like I need permission.


  • FoxDev

    @blakeyrat said:

    game developers

    ah. that's why i never needed to debug shaders....

    not interested in making those. i prefer consuming them.

    @blakeyrat said:

    Like I need permission.
    nevertheless you have it.



  • Well if it makes you feel better, it sounds as if maybe using Vim as an IDE is slightly less shitty than I'd assumed.

    ... still sounds shitty though.


  • BINNED

    @blakeyrat said:

    Well if it makes you feel better, it sounds as if maybe using Vim as an IDE is slightly less shitty than I'd assumed.

    I think now you're ready to ask @ScholRLEA about using Emacs as an IDE for Common Lisp. 🚎

    I'll just leave this here in the meantime:

    https://www.youtube.com/watch?v=_B_4vhsmRRI


  • Discourse touched me in a no-no place

    @Yamikuronue said:

    Five whole things I have to memorize, just to quit!

    Yeah, me, I just hit Alt-F4, and have Build All set to save first so I almost never have to manually save before quitting.

    Also I leave as many settings on the default as possible because I'm sick of spending a lot of time configuring shit. Except, of course, for turning on "convert tabs to spaces because it's not 1850".


  • Discourse touched me in a no-no place

    AKA "fuck you, I know what you wanted to do but I'm going to make you jump through hoops and do it my way."

    That's what ^Z-kill %1 is for.


  • Discourse touched me in a no-no place

    @antiquarian said:

    using Emacs as an IDE

    I've done that. It's kind of fun, but then you have to remember all the arcane commands and eventually type M-x eliza or something by mistake.


  • FoxDev

    @FrostCat said:

    AKA "fuck you, I know what you wanted to do but I'm going to make you jump through hoops and do it my way."

    They could change it, but we're talking about a 40yo program designed for Unix ;)


  • Discourse touched me in a no-no place

    @RaceProUK said:

    They could change ithave not been assholes in the first place and had ^C exit.

    FTFY etc.


  • Discourse touched me in a no-no place

    @RaceProUK said:

    we're talking about a 40yo program designed for Unix 😉

    @Frostcat's screenshot is Vim, which is at most 24-and-a-bit years old. ;)

    It's still no excuse for Vim handling Ctrl+C as "we know you want to quit, so we're going to tell you the Vi-approved way of quitting but not actually quit". I'd accuse it of being Discoursian in the sense that it would rather educate users than do what the fuck a user wants to do, if it wasn't 22 years older.

    Vim is "Vi iMproved" so they could have improved Vi by letting Ctrl+C quit the damned thing.


  • FoxDev

    I'm not gonna pretend to understand why they did it that way, but it could be that Ctrl+C doesn't guarantee a clean quit, whereas the :quit command does. Or at least, that's how it could have been when Vi first came about, and inertia has kept it that way even in Vim.


  • Discourse touched me in a no-no place

    I'd be more understanding if Ctrl-C did something in Vi, so Vim didn't want to change it, but it doesn't. You either get no response or you get education on how you'e Doing Vim Wrong™.

    I use Vi and/or Vim every day. I don't think they're the Worst Of The Worst™. It's just sometimes easier to use SCP, often with the CLI, to copy the file to the local machine and use either Notepad++ (Windows) or TextWrangler (OSX) to edit it and then SCP it back than it is to fuck about with Vi and/or Vim.


  • Discourse touched me in a no-no place

    @loopback0 said:

    @Frostcat's screenshot

    That ain't my screenshot. I quoted @accalia or whoever.

    @loopback0 said:

    im is "Vi iMproved" so they could have improved Vi by letting Ctrl+C quit the damned thing.

    "But ^C is for aborting, not quitting". I bet that's the reason.

    To which I say "fuck you, I probably already saved, so it doesn't matter."


  • Discourse touched me in a no-no place

    @RaceProUK said:

    it could be that Ctrl+C doesn't guarantee a clean quit

    Like I said in my last post I bet it's because ^C is SIGABRT or whatever. "you can't quit that way because that's for abnormal termination!" And the users who aren't ideologically pure all go "who cares?"

    vim's not the only piece of software that I've seen go "I know you wanted to quit but I'm not going to let you unless you do it the right way." That's why I made the crack about suspend/kill: spite.


  • Discourse touched me in a no-no place

    @FrostCat said:

    That ain't my screenshot. I quoted @accalia or whoever.

    The screenshot you quoted then. Whatevs.

    @FrostCat said:

    "But ^C is for aborting, not quitting". I bet that's the reason.

    If I'm resorting to Ctrl-C, I'm already wanting to just get the hell out of it.

    @FrostCat said:

    To which I say "fuck you, I probably already saved, so it doesn't matter."

    Also that.



  • @RaceProUK said:

    inertia

    Oh good. The best reason for making any software development decision.


  • BINNED

    @Mason_Wheeler said:

    world's last bug

    If your compiler does not give you warning, and neither your IDE you better stop living in the 90s.


  • BINNED

    Well even worse than vi is Latex! there is absolutely no fucking way to get out of it, it needs a magical way of hitting x to exit with error about unknown command! I would normally never want to touch such low level Tex (Lyx is all I use) but Doxygen creates a tex and I wanted to see what I can get from it.


  • Fake News

    @loopback0 said:

    Vim is "Vi iMproved" so they could have improved Vi by letting Ctrl+C quit the damned thing.

    They could have done so, but ViM already uses it to abort any ongoing operations (infinite macros / mappings, long-running vimgrep or syntax highlighting). If it were to be "improved" then pressing Ctrl+C would no longer be "safe" to press at just any time. Or they'd need an option to disable this kind of training wheels, but it's not as if ViM has a lack of options.



  • Assignment returns (), which is of type Unit, which is defined as follows:

    class Unit {
    }
    


  • @blakeyrat said:

    If you ever wonder why game developers are almost exclusively on Windows, VS is pretty much the ONLY IDE with features like that.

    And where is that functionality located? Because I have Visual Studio, I have some shaders that aren't performing properly, and no matter what I do I can't get any reliable information about what's going wrong with them.



  • I don't know. I've never used it myself, I just have read a lot of articles from a lot of game developers praising it.



  • @Mason_Wheeler said:

    @Yamikuronue said:
    Not for me. Pretty much the only shortcuts I can remember on a daily basis are ctrl-alt-del, Win-L, and Win-R

    Win-D also comes in handy from time to time: It's essentially a Minimize All command. (The D is for "show the Desktop", I assume.)

    Win+D is "toggle desktop".

    Win+M is "minimize all", and can be reversed with Win+Shift+M.

    They are not quite the same. There are basically two key differences:

    • Win+D will always hide everything to make the desktop visible, but Win+M won't always hide everything because it only hides windows that can be minimized. For example: open Notepad, then File... Open. The Open dialog can't be minimized, and since it's a modal dialog (you can't return focus to Notepad while it's open), Notepad can't be minimized either. Win+M won't minimize either of them.

    • Win+D toggles the desktop, so pressing it twice in a row will hide then restore all your windows; however, if you toggle to the desktop and then any other windows get opened or restored, you won't be able to toggle the other windows visible again. Win+M doesn't have this limitation; pressing Win+Shift+M still restores all the windows that were minimized, even if you've opened or restored other windows in the meantime.

    Generally, I prefer Win+M because it can be un-done more reliably; I only revert to Win+D if there are windows that won't minimize.



  • I think I found someone's new wallpaper:


  • FoxDev

    @abarker said:

    I think I found someone's new wallpaper:

    hmm.....

    Paging @aliceif: Does @abarker's wallpaper meet your quality control standards?


  • Notification Spam Recipient

    @accalia said:

    @abarker said:
    I think I found someone's new wallpaper:

    hmm.....

    Paging @aliceif: Does @abarker's wallpaper meet your quality control standards?

    I'm not having a seizure so probably not.


  • Java Dev

    My most annoying vim moments tend to be when I typed some_command_with_a_lot_of_output | vim - but fatfingered the -. Vim helpfully warns stdin isn't from a terminal then proceeds to be borderline unkillable.


Log in to reply