this post was submitted on 10 Dec 2023
685 points (95.5% liked)

linuxmemes

21263 readers
825 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.

  • Please report posts and comments that break these rules!

    founded 1 year ago
    MODERATORS
     

    as I'm going through the process of learning vim, I'm discovering newfound powers. one of them being to execute commands from vim itself.

    below examples might better explain some of them:

    1. want to see what files are in current directory? enter command mode(by typing :) and follow it by a bang(!). then do ls like you'd do in a terminal and press enter. this is not limited to just ls. you can enter any command that you can enter in terminal. for example: :! uname --operating-system (which will output GNU/Linux :))

    2. so you want to quickly save just a certain part of your file into another file? just select everything you need by entering visual mode(v) and do :w filename(actual command you'll see would be '<,'>:w filename). verify it using 1.(i.e., :! cat filename.

    3. want to quickly paste another file into current one? do :r filename. it'll paste its contents below your cursor.

    4. or maybe you want to paste results of a command? do :r !ls *.png.

    vim is my ~ sweet ~ now. make it yours too.

    you are viewing a single comment's thread
    view the rest of the comments
    [–] [email protected] 12 points 11 months ago (2 children)

    bonus point: if you like inception, do :term, press i and start another (n)vim session :)

    [–] [email protected] 6 points 11 months ago (1 children)

    The challenge now is escaping the neovim terminal

    [–] [email protected] 3 points 11 months ago (1 children)

    Ctrl+\ Ctrl+n gets you back to normal mode.

    [–] [email protected] 1 points 11 months ago (1 children)

    But what do you do if you are not using a us keyboard?

    [–] [email protected] 2 points 11 months ago (2 children)

    The layout is what matters for vim and it's derivatives. I might be wrong here, but if you really need to be able to use the same keybindings as you would on a English qwerty one, you could try remapping things to their addresses or whatever that's called - basically the same key, physically, regardless of its layout mapping.

    That being said, it's vim, you can remap the command to get back to normal mode from terminal mode to whatever key or key sequence you like most.

    Using mouse to scroll up and down your terminal window inside vim also gets you back to normal mode.

    And, well, quitting the shell of your terminal in vim works just fine - either via command or hitting Ctrl+d.

    [–] [email protected] 2 points 11 months ago

    On my keyboard the layout is mostly the same, it's not like AZERTY or something like that. The problem is some keys like \ are behind modifiers (In this case AltGr+\), so most times when I've tried the Ctrl+\ combination it hasn't worked (You can see how the keyboard layout is here

    [–] [email protected] 2 points 11 months ago* (last edited 11 months ago)

    Vim can't automatically handle other key maps? I'm sure it worked as designed in my dvorak system

    :w to write, not :, (Dvorak has comma where qwerty has w)

    I get it if the keyboard doesn't use the letters we use, but that person could type in Lemmy with all the normal letters

    [–] [email protected] 3 points 11 months ago

    Via this video (thanks @[email protected]!) i recently learned a bunch of tricks about :term and am now tempted to start using it all the time.