899
top 50 comments
sorted by: hot top controversial new old
[-] abraham_linksys@sh.itjust.works 83 points 1 year ago* (last edited 1 year ago)

Ctrl+a - go to beginning of line (alpha? I dunno)

ctrl+e - go to (e)nd of the line

alt+f - (f)orward one word

alt+b - (b)ack one word

You might already know these but no one else has posted them on this thread yet. I work in both Linux and Mac a lot and this works for them. No idea about Windows I'm no longer forced to use it at work 🙂

[-] NaiveBayesian@programming.dev 15 points 1 year ago* (last edited 1 year ago)

Also Ctrl + w to delete one word backwards (which is what OP wants to do).

Edit: Nvm I misread the post, deleting is not what OP wants to do. Still gonna keep this because Ctrl + w is easily the readline shortcut I use the most.

[-] FUsername@feddit.de 5 points 1 year ago

While we're at it: Alt+d deletes the next word.

[-] dot20@lemmy.world 11 points 1 year ago

If you use WSL (which you should), you have a normal Bash, so it works

[-] abraham_linksys@sh.itjust.works 23 points 1 year ago

The best part of Windows is the part that isn't Windows lmao lawd I'm glad I don't work for the federal government (exclusively Microsoft) anymore

[-] darcy@sh.itjust.works 3 points 1 year ago

fed detected

[-] debil@lemmy.world 38 points 1 year ago

In a sane editor just press b.

[-] nailbar@sopuli.xyz 7 points 1 year ago

Is Ctrl + ⬅️ for typing 'b' then?

[-] debil@lemmy.world 5 points 1 year ago

No (although you can easily create such a key mapping if so inclined). To type b character one must first enter the so called Insert mode. Depending on where exactly you wish to type the character, you can enter the Insert mode by typing for example i, a, I, A, o or O.

[-] nailbar@sopuli.xyz 5 points 1 year ago

It wasn't a serious question 🙂

Sounds like you're talking about good old vi or vim.

[-] maeries@feddit.de 27 points 1 year ago
[-] Anticorp@lemmy.ml 29 points 1 year ago* (last edited 1 year ago)

Because fuck you! That's why!

Edit: serious answer, I'm pretty sure it's outputting the key events to the terminal line.

[-] gornius@lemmy.world 26 points 1 year ago

Because terminal emulators are literally the old terminal emulators (ye oldy screens + keyboard combos that looked like a computer but were just IO) and everything modern they do is just a hack.

[-] grue@lemmy.world 17 points 1 year ago* (last edited 1 year ago)

Terminals with screens? What's all that newfangled shit?

Nah, whippersnapper, this tech goes all the way back to teletypes. You didn't get a fancy-shmancy "screen;" instead, it printed out the results of your commands. On actual paper!


Seriously though, that's why the device files for terminals in Linux are named tty[$NUM] -- "tty" is shorthand for "TeleTYpe."

I believe it's also why really primitive programs can't scroll up and do things like writing an entire screen worth of content in order to emulate interactivity (as opposed to seeking the cursor backwards and replacing only the parts the program wants to replace): they're using a version of the control protocol so primitive that it didn't have a function to go backwards because teletypes didn't need it due to physical impossibility. (That's my theory, anyway -- I haven't dug deep enough into the guts of TERMCAP etc. to be sure. I'm also not actually old enough to have experienced that stuff, despite my joke above.)


Edit: look at this excerpt from man terminfo(5), for instance:

Basic Capabilities
The number of columns on each line for the terminal is given by
the cols numeric capability.  If the terminal is a CRT, then the
number of lines on the screen is given by the lines capability.
If the terminal wraps around to the beginning of the next line
when it reaches the right margin, then it should have the am
capability.  If the terminal can clear its screen, leaving the
cursor in the home position, then this is given by the clear
string capability.  If the terminal overstrikes (rather than
clearing a position when a character is struck over) then it
should have the os capability.  If the terminal is a printing
terminal, with no soft copy unit, give it both hc and os.

To this day, the info database entry for your virtual terminal has to specify that it's capable of deleting a line of text instead of merely striking it out, because some terminals back in the day actually couldn't!

[-] mawkler@lemmy.ml 25 points 1 year ago
[-] nayminlwin@lemmy.ml 22 points 1 year ago

What happens to me is the opposite. I got used to Ctrl+w to delete a word in terminal and accidentally closed browser tabs many times while typing in them.

[-] jordanlund@lemmy.one 18 points 1 year ago

In any sane editor:

Save a file - CRTL-S

In VI:

  1. Switch to command mode by pressing the Esc key.

  2. Type : (colon). This will open the prompt bar in the bottom left corner of the window.

  3. Type w after the colon and hit Enter.

In Emacs:

https://www.gnu.org/software/emacs/manual/html_node/emacs/Save-Commands.html

C-x C-s Save the current buffer to its file (save-buffer).

C-x s Save any or all buffers to their files (save-some-buffers).

M-~ Forget that the current buffer has been changed (not-modified). With prefix argument (C-u), mark the current buffer as changed.

C-x C-w Save the current buffer with a specified file name (write-file).

M-x set-visited-file-name Change the file name under which the current buffer will be saved.

When you wish to save the file and make your changes permanent, type C-x C-s (save-buffer). After saving is finished, C-x C-s displays a message like this:

Wrote /u/rms/gnu/gnu.tasks

If the current buffer is not modified (no changes have been made in it since the buffer was created or last saved), saving is not really done, because it would have no effect. Instead, C-x C-s displays a message like this in the echo area:

(No changes need to be saved) With a prefix argument, C-u C-x C-s, Emacs also marks the buffer to be backed up when the next save is done. See Backup Files.

The command C-x s (save-some-buffers) offers to save any or all modified buffers. It asks you what to do with each buffer. The possible responses are analogous to those of query-replace:

y SPC Save this buffer and ask about the rest of the buffers.

n DEL Don’t save this buffer, but ask about the rest of the buffers.

! Save this buffer and all the rest with no more questions.

q RET Terminate save-some-buffers without any more saving.

. Save this buffer, then exit save-some-buffers without even asking about other buffers.

C-r View the buffer that you are currently being asked about. When you exit View mode, you get back to save-some-buffers, which asks the question again.

C-f Exit save-some-buffers and visit the buffer that you are currently being asked about.

d Diff the buffer against its corresponding file, so you can see what changes you would be saving. This calls the command diff-buffer-with-file (see Comparing Files).

C-h Display a help message about these options.

[-] RocksForBrains@lemm.ee 3 points 1 year ago
[-] feifei@feddit.de 17 points 1 year ago

Also in some Windows programs. Infuriating

[-] james@lurk.fun 13 points 1 year ago
[-] s0phia@lemmy.world 11 points 1 year ago

Idk about bash but at least in fish I can do alt + arrows to move the cursor by word, also alt + backspace works to delete whole words.

[-] Dohnakun@lemmy.fmhy.ml 11 points 1 year ago

Depends on the terminal. xfce4-terminal it works.

[-] WhiskyTangoFoxtrot@lemmy.world 3 points 1 year ago

Works in the Cinnamon terminal, too.

load more comments (1 replies)
[-] chaorace@lemmy.sdf.org 10 points 1 year ago

That's why my terminal is emacs

[-] SanndyTheManndy@lemmy.world 11 points 1 year ago
[-] Rootiest@lemmy.world 13 points 1 year ago* (last edited 1 year ago)

That's why my terminal is OS

[-] grue@lemmy.world 6 points 1 year ago

Emacs and bash use the same navigation shortcuts though, LOL.

[-] chaorace@lemmy.sdf.org 16 points 1 year ago

Bold of you to assume that an Emacs user will have anything remotely resembling the default keymap by the time they're proud enough to brag about it

load more comments (2 replies)
[-] priapus@sh.itjust.works 6 points 1 year ago

I've never used a distro that didn't come with a sane default shell config to avoid this

[-] korthrun@lemmy.sdf.org 5 points 1 year ago

✨🌈 R E A D L I N E 🌈✨

[-] AnActualFossil@kbin.social 4 points 1 year ago

Alt-B usually works fairly reliably

[-] binwiederhier@discuss.ntfy.sh 3 points 1 year ago

You can type reset to fix your terminal if it gets messed up like that.

[-] AlexWIWA@lemmy.ml 3 points 1 year ago* (last edited 1 year ago)

Mind bogglingly infuriating

[-] nayminlwin@lemmy.ml 3 points 1 year ago

What happens to me is the opposite. I got used to Ctrl+w to delete a word in terminal and accidentally closed browser tabs many times while typing in them.

[-] Ascend910@lemmy.ml 3 points 1 year ago

Does anyone know how to fix it in bash?

[-] Raphael@lemmy.world 11 points 1 year ago* (last edited 1 year ago)
[-] Ascend910@lemmy.ml 6 points 1 year ago

You didn't read my comment properly :(

[-] iusearchbtw@lemmy.sdf.org 2 points 1 year ago

fish is nice but the nonstandard syntax gets really annoying after a while. I use ble.sh these days.

load more comments (1 replies)
load more comments (2 replies)
[-] xthexder@l.sw0.com 4 points 1 year ago

Why is your user flagged as a bot account? You certainly aren't behaving like a bot.

load more comments (2 replies)
load more comments (1 replies)
load more comments
view more: next ›
this post was submitted on 14 Jul 2023
899 points (100.0% liked)

Programmer Humor

32555 readers
439 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS