Chris's Wiki :: Softwarehttps://utcc.utoronto.ca/~cks/space/Software/?atomDWiki2024-02-26T21:44:35ZRecently changed pages in Chris's Wiki :: Software.tag:cspace@cks.mef.org,2009-03-24:/Software/VimTipscks<div class="wikitext"><p>I'm collecting these for my own use and memory, since I don't necessarily
want to throw all of them into <a href="https://utcc.utoronto.ca/~cks/space/blog/links/">the blog's links category</a>.</p>
<ul><li><a href="https://jemma.dev/blog/intermediate-vim-tips">Vim Tips for the Intermediate Vim User</a><p>
</li>
<li><a href="https://www.hillelwayne.com/post/intermediate-vim/">At least one Vim trick you might not know</a><p>
</li>
<li><a href="https://thevaluable.dev/vim-intermediate/">A Vim Guide for Intermediate Users</a>,
<a href="https://thevaluable.dev/vim-advanced/">A Vim Guide for Advanced Users</a>,
<a href="https://thevaluable.dev/vim-adept/">A Vim Guide for Adept Users</a>,
<a href="https://thevaluable.dev/vim-veteran/">A Vim Guide For Veteran Users</a>,
<a href="https://thevaluable.dev/vim-expert/">A Vim Guide For Experts</a></li>
</ul>
</div>
Links to Vim tips, techniques, unusual commands, and so on2024-02-26T21:43:52Z2021-09-15T04:09:53Zhttps://utcc.utoronto.ca/~cks/space/Software/MockMachcks<div class="wikitext"><p><a href="http://fedoraproject.org/wiki/Projects/Mock">Mock</a> and <a href="http://thomas.apestaart.org/projects/mach/">mach</a> are both ways of building
Linux programs for other distributions. So why do you care? Simple:
they're the easiest way of building x86 binaries on an x86_64
system.</p>
<p>(You would think that 'cross' compiling would be the easiest way, since
it's just building for a different ABI. Tragically, it's not, at least
not in <a href="https://utcc.utoronto.ca/~cks/space/blog/linux/FC5MissingSoSymlinks">Fedora Core 5</a>.)</p>
<p>Both work by installing a complete (although usually minimal) copy of
the distribution you want to work in and <code>chroot()</code>'ing into it to do
work. <a href="http://fedoraproject.org/wiki/Projects/Mock">Mock</a> is very specific to building RPMs in a guaranteed clean
environment; <a href="http://thomas.apestaart.org/projects/mach/">mach</a> is more general, and so is useful for building
arbitrary programs from source. Both are part of Fedora Extras.</p>
</div>
<code>mock</code> and <code>mach</code>: building Linux programs for other distributions2024-02-26T21:43:52Z2006-06-12T19:59:17Zhttps://utcc.utoronto.ca/~cks/space/Software/pcacks<div class="wikitext"><p><a href="http://www.par.univie.ac.at/solaris/pca/">Pca</a> (Patch Check Advanced)
is a lovely program for dealing with Solaris patches. To quote its
site:</p>
<blockquote><p>Patch Check Advanced (pca) generates lists of installed and missing
patches for Sun Solaris systems and optionally downloads patches. It
resolves dependencies between patches and installs them in correct
order.</p>
</blockquote>
<p>It is miles better than any of the alternatives I've seen (including
Sun's own stuff) and looks like it's going to be pretty much the only
tool I need to manage Solaris patches. Highly recommended.</p>
<p class="teaser"><a href="https://utcc.utoronto.ca/~cks/space/Software/pca">Read more »</a></p>
</div>
/Software/pca2024-02-26T21:43:52Z2006-03-29T00:37:33Zhttps://utcc.utoronto.ca/~cks/space/Software/bstringcks<div class="wikitext"><p>Every now and then I need to write some string processing code in
C, because the Python (or awk/sed/etc, or even perl) alternatives
just aren't running fast enough. However, life is too short to write
raw string manipulation code in C. What I want to do is to write
Python-in-C, using some library to handle all of the low-level string
manipulation so that I just write high-level stuff.</p>
<p>The library I like for this is
<a href="http://bstring.sourceforge.net/">bstring</a> (also
<a href="http://sourceforge.net/projects/bstring/">here</a>).</p>
<p class="teaser"><a href="https://utcc.utoronto.ca/~cks/space/Software/bstring">Read more »</a></p>
</div>
/Software/bstring2024-02-26T21:43:52Z2005-06-12T00:47:24Zhttps://utcc.utoronto.ca/~cks/space/Software/quiltcks<div class="wikitext"><p><a href="http://savannah.nongnu.org/projects/quilt">Quilt</a> is a system for
managing changes to source code. To quote from the RPM package:</p>
<blockquote><p>These scripts allow one to manage a series of patches by keeping track
of the changes each patch makes. Patches can be applied, un-applied,
refreshed, etc.</p>
</blockquote>
<p>I've played with quilt and it worked out nicely. Notably, it has
very useful support for easily adding more patches to an RPM (which
is already a base program version plus a stack of patches).</p>
<p class="teaser"><a href="https://utcc.utoronto.ca/~cks/space/Software/quilt">Read more »</a></p>
</div>
/Software/quilt2024-02-26T21:43:52Z2005-06-12T00:46:44Z