[OT] Which IDE / Editor do you use?

H. S. Teoh hsteoh at quickfur.ath.cx
Sun Sep 15 20:47:32 PDT 2013


On Mon, Sep 16, 2013 at 04:04:24AM +0200, Adam D. Ruppe wrote:
> On Monday, 16 September 2013 at 01:48:31 UTC, H. S. Teoh wrote:
> >Have you ever tried to configure sloppy focus on Windows?
> 
> yup. It kinda works until you get the idiot apps that raise
> themselves whenever they get focus! Which are a lot of them. Ugh.

Exactly. A major annoyance when you're trying to type something while
looking at something else in another window for reference.


[...]
> >Heh. I just use 'bg', 'jobs', and 'fg' on a single terminal. :)
> 
> Yeah, I do that sometimes too, but you can get output mixed
> together! And you can't easily watch for updates without that. So I
> like to use windows and gnu screen. The windows actually come and
> go, as I just reattach a running screen session when needed.

GNU screen is pretty awesome. But it has some warts that makes me not
use it by default:

- Its default escape sequence is extremely annoying (ctrl-A clashes with
  bash's go-to-beginning-of-line, which I use literally *all* the time).
  Switching it to something like ctrl-U makes it more tolerable.

- It doesn't seem to pick up terminal settings correctly sometimes.
  Which results in needing to set $TERM manually, or type
  `TERM=rxvt-unicode program args`, instead of just `program args`.
  Quite annoying.


[...]
> I always have at least one xterm open with a screen session: 0 =
> where I run mplayer and other media players for background sound. 1
> = mutt. 2 = alsamixer. 3 = elvis on a note-to-self file.

Heh, my ratpoison setup is pretty similar to your screen setup
(ratpoison is essentially X11 windows inside GNU screen) : 0 = main rxvt
(terminal for generic stuff, like poking around $HOME, reading manpages,
editing TODO lists, etc.), 1 = browser, 2,3,... = other dedicated stuff,
depending on what I'm working on.  Currently I have 2 = media players, 3
= D-related stuff (mostly for browsing Phobos when I need to look up
something, or pulling git HEAD for dmd/druntime/phobos when I'm feeling
bored).

Within each rxvt, I usually have vim opened to whatever I'm working on.
I don't actually have multiple suspended jobs except when I'm working on
something intensive, like working on a Phobos pull while editing
/tmp/test.d for testing various implementation details, sometimes with
`objdump -D | less` viewing the disassembly of some problematic code, or
a manpage I'm referencing.


[...]
> And everything else is random projects in rxvts or xterms (depending
> on if I need unicode or not - my rxvt doesn't support utf8). They
> are generally screen for bigger, longer running things, 0 = vim with
> all relevant source files open, screen 1 maybe make or debugger or
> ssh session, depending on the job.
> 
> I currently have 28 copies of rxvt and/or xterm open, just stuff
> I'll get back to eventually.

Whoa, that's a lot. I usually have only 3-4 things open at a time,
sometimes more (at work usually 6-7), but ratpoison is annoying in that
having more than 9 things open causes slow switching 'cos you can't just
do ctrl-T <digit>. It slows me down enough to lose the advantage of fast
keyboard-driven switching, so I avoid it.


> I actually used to run a second copy of X as well, on vt8, for full
> screen games, but I haven't played full screen games for a long
> time. I'd do a separate copy so it wouldn't mess up my other windows
> when changing the resolution or crashing.

Heh. I used to have *three* X servers running, keyed to vt7, vt8, vt9,
for 3 simultaneous login sessions, multiplexed by xdm. I still use xdm
for X sessions, but nowadays I only have one instance of X running --
it's sorta a historical accident, xdm at some point in the past somehow
stopped working properly with multiple local X servers (either that, or
the X server didn't like other copies of itself running on the same
machine), and I gave up trying to make them coexist peacefully, so I
adapted my usage pattern to fit in a single session instead.

(Why multiple sessions, you ask? 'cos at one point I was experimenting
with different WM setups to see which one(s) I like better, but I still
wanted to continue working on whatever it is I was working on without
interruption, so having multiple copies of X running allowed me to keep
one long-running session for the continuing work, and other sessions
that come and go as I play around with stuff. It also made it less prone
to X11 upgrade problems -- there was a time when every other X server
upgrade carried a risk of outright breaking into little pieces, but I
like to live on the bleeding edge so I always upgrade everything. Having
multiple sessions open means I can continue doing stuff with the
long-running session while trying to fix the broken X server instead of
getting interrupted and dropping back to the Linux consoles.)


> Switching between the rxvts is easy btw: I can click them on the
> mousebar, wheel to a new workspace, or I have a bunch of keyboard
> shortcuts set up, all using the Windows key. Then at times I run
> nested screens, especially on the laptop.

In ratpoison, it's just `ctrl-T <digit>` to switch between them.

TBH, I'm still not quite happy with the choice of escape sequence. If I
had my way, I'd rather have <windowsKey> <F1..F12> instead. Maybe one of
these days I'll write a D replacement for ratpoison that does just that.
(Ratpoison does let you configure the escape key, but it doesn't work
with <windowsKey> for some stupid reason).


> Anyway though I love it because I can have so many more things open
> than I could ever handle on other systems.

Yeah, people can rant and rave about how Linux sux and what-not, but the
fact of the matter is, I could run 3 copies of X11, each with 15 windows
open on a Pentium with 128MB RAM, and be fully functional, whereas it
takes every last drop of juice the system's got just for Windows'98 to
run without taking 3 seconds to paint the screen pixel-by-pixel every
time you open/close a window. Of course, this is an unfair comparison,
because those 3 copies of X11 are running twm, which, besides ratpoison,
is as minimal as you can get, whereas Windows'98 is running some
resource hungry graphics-intensive GUI. But the point is that the system
lets you use a minimal WM should you choose to, rather than in Windows
where you *have* to use whatever MS has decided everyone must use, and
it's too-bad-so-sad if you need to upgrade your hardware just to be able
to continue using it.


T

-- 
MSDOS = MicroSoft's Denial Of Service


More information about the Digitalmars-d mailing list