[libre-riscv-dev] development workflow

Aleksandar Kostovic alexandar.kostovic at gmail.com
Mon Feb 18 11:39:34 GMT 2019


Yeah, sublime can be split into many parts. More than two split screens are
a bit of a pain to look at, however...

On Mon, Feb 18, 2019 at 10:16 AM Luke Kenneth Casson Leighton <lkcl at lkcl.net>
wrote:

> ---
> crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
>
> On Mon, Feb 18, 2019 at 8:29 AM Aleksandar Kostovic
> <alexandar.kostovic at gmail.com> wrote:
> >
> > Wow, that a lot of stuff going on. I like the look.
>
>  it's... efficient.  fvwm2 is set up to *not* require a "click" to
> change window-focus.  i can just move the mouse about 2-3 inches, no
> need to do anything more, and the xterm next door is activated.
>
>  moving between virtual desktops (of which there are *24*) is likewise
> a matter of just moving the mouse off the edge of the screen.  it can
> be very confusing if the mouse is kicked accidentally :)
>
>  the extra desktops means i can have firefox and chrome plus a stack
> of xterms in one window, then audio management in another (i run jackd
> with pulseaudio integration - it gets complicated very quickly),
> hexchat plus a stack of development xterms in another...
>
>  all of these i can flip around *without* having to shut *anything*
> down.  most people are forced to have to shut down an entire setup
> arrangement just to start some alternative work.
>
> > Also which OS are you
> > using? Looks to me like some kind of *ubuntu 18.04 cuz GCC 7.3.0 is
> default
> > on 18.04 and apt package manager. Maybe a custom DE? I dig it.
>
>  debian/testing, with angband.pl's "nosystemd" packages, using fvwm2.
> been using fvwm2 for 20 years.  http://lkcl.net/fvwm2rc is the config.
>
>  i don't even use a graphical window login manager: i run fvwm2 with
> startx & from a *console* login (!)  and have set up a ~/.xinitrc to
> start the time, systray, laptop battery management program and so on.
>
>
> > Mine setup is 1080p laptop screen and I usually have only one app taking
> up
> > the screen. Look at attached screenshot. Its Sublime 3. I just love it.
>
>  *sigh* i see you're using a GUI-based editor, with tabs.  you notice
> how a whopping 70% of the editor window is *entirely empty*?  that's
> what i mean.
>
>  tab-based GUIs are great if you want to *compare* two files,
> visually, to find the differences.  you can flip easily between Tab-1,
> Tab-2, Tab-1, Tab-2.
>
>  i used this trick to identify even down to bit-level in network
> reverse-engineering of NT Domains, back in 1996.
>
>  but for anything else?  god, no.
>
>  does the GUI / IDE you're using have a "split window" feature?  or,
> can you open multiple of them at once?  that would be infinitely
> better, as you could see the file you're editing *and* the unit test
> file *and* the base class and more, all at the same time.
>
> > VIM
> > is not what i am most efficient with right now, but i force myself to use
> > it whenever i write Verilog or C++.
>
>  :)
>
> to help with python development, consider to add these to ~/.vimrc:
>
> map , ^[:w^M:!python %:t^M^M
> syntax on
> set ts=4
> set sw=4
> set expandtab
>
> if you are testing a file, rather than exit it, you can just press ","
> and that macro will:
>
> * save the file
> * execute "python {insert current filename}"
>
> what *that* in turn means is, you absolutely do not have to move your
> hand over to the mouse, you do not have to background vim, you can run
> the unit tests or test the program *directly* without moving you
> fingers any further than necessary to hit the "comma" key.
>
> if you prefer it could be modified to "python {insert current filename} |
> more"
>
> the other commands set tabstop=4, shiftwidth=4 (so when you use the
> ">>" vim command it indents by 4 spaces), and expandtab makes damn
> sure that tabs are *not* inserted, they're expanded to 4 spaces.
>
>
> then, there is exuberant-ctags, which integrates with vim (and emacs),
> which you can use to navigate immediately to a function anywhere
> recursively within subdirectories.  "ctags -R" creates the "tags"
> file, and ctrl-] will read the current function name (or variable
> name) that the cursor is on, and will jump to its definition,
> immediately.  including if it's in a totally different file.
>
>
> i didn't pick this approach because it's "fun", i picked it because
> it's elegant and ultra-efficient.
>
> l.
>
> _______________________________________________
> libre-riscv-dev mailing list
> libre-riscv-dev at lists.libre-riscv.org
> http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev
>


More information about the libre-riscv-dev mailing list