Wednesday, January 05, 2011

CiWiki

CiWiki is a fork of didiwiki which has some of the features that didiwiki lacks added to it.

http://sourceforge.net/projects/ciwiki/
http://ciwiki.sourceforge.net/

To edit pages you have to register a user account first.

http://server:8000/NewAccount

When you go through the registration process it says it is going to send you an email, but it doesn't send one.

What it *does* do is write an entry to the file "~/newwikiusers.txt"

If you look in this file you will find the confirmation code that you need to complete the registration of your account:

U:UserName P:Password M:email@address.com I:10.0.0.2 T:21570445 C:149ce5ebd5db644

Copy the hex code in the C: field to the "Validation Code:" box & click [Process it]
You should now be logged in.

Thursday, November 25, 2010

Ripping audio from an flv file under Linux

Today I was trying to rip the audio from an flv off YouTube, and the basic rip with mplayer:


$ mplayer -dumpaudio input_file.flv -dumpfile output_file


...was giving me a binary file that I couldn't use.

After some Googling, reading and trying I found this worked:


$ mplayer -ao pcm:file=output_filename.wav -vo null -vc dummy input_filename.flv


The output file from an 8MB flv was a 50MB wav file.

To get it in a smaller file I converted it to an ogg:


$ oggenc output_filename.wav -o target_filename.ogg


The resulting ogg file was 3.7MB

I got help from here: http://linuxgazette.net/131/howell1.html

Saturday, October 23, 2010

How to copy & paste text in links with gpm

It's a bit fiddly to use gpm copy & paste in Links, but yes, you can do it.

The trick is to use your key (with left-click+drag) to select the text you want to copy.
Then you need to click in the field where you want to paste, and use +Middle-Click to paste.

My (Debian squeeze) console has been a bit weird lately (I sometimes need to press a key several times for it to register) but I managed to get it to work after a few tries.

Bear in mind that links sort of behaves a little bit like vi in that there is a separate text entry mode that you have to activate to tell links that you want to enter text. If you mouse-click on a field, (or press enter on it if you've navigated to it via arrow keys) that activates it.

Thursday, December 03, 2009

Lexical filehandles on old (pre 5.6) Perl...

I was looking into this because of wanting to use lexical filehandles in pre 5.6 Perl.

http://www.perl.com/doc/manual/html/pod/perldata.html#Typeglobs_and_Filehandles

http://perl.plover.com/local.html#2_Localized_Filehandles

http://stackoverflow.com/questions/613906/why-does-programming-perl-use-local-not-my-for-filehandles

http://www.perlmonks.org/?node_id=305217


#!/usr/bin/perl -w
#
#
#
use strict;

my $file = 'file.txt';

local *FH;

# my $file_fh = do { *FH };
my $file_fh = \*FH;

open ($file_fh, "> $file") || die "Can't write to '$file': $!\n";

my $line = "This is some text";

print $file_fh "$line\n";

close $file_fh;

Wednesday, December 02, 2009

Compiling Perl modules on Solaris


cc: unrecognized option `-KPIC'
cc: language ildoff not recognized
cc: Expat.c: linker input file unused because linking not done


http://prefetch.net/blog/index.php/2006/07/29/building-perl-modules-for-solaris/

You will note here that this is trying to compile XML::Parser ...
You will find the most relevent instructions for that here http://aspn.activestate.com/ASPN/Mail/Message/perl-xml/1757618


gcc -c -I/opt/yum/libs/common/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO -DVERSION=\"2.36\" -DXS_VERSION=\"2.36\" -fPIC "-I/usr/perl5
/5.8.4/lib/i86pc-solaris-64int/CORE" Expat.c
Expat.xs:132: error: conflicting types for 'Perl_newSVpvn'
/usr/perl5/5.8.4/lib/i86pc-solaris-64int/CORE/proto.h:521: error: previous declaration of 'Perl_newSVpvn' was here
Expat.xs:132: error: conflicting types for 'Perl_newSVpvn'
/usr/perl5/5.8.4/lib/i86pc-solaris-64int/CORE/proto.h:521: error: previous declaration of 'Perl_newSVpvn' was here
Expat.xs:140:1: warning: "ERRSV" redefined
In file included from Expat.xs:15:
/usr/perl5/5.8.4/lib/i86pc-solaris-64int/CORE/perl.h:799:1: warning: this is the location of the previous definition
Expat.xs: In function `newUTF8SVpv':
Expat.xs:149: warning: assignment makes pointer from integer without a cast
Expat.xs: In function `generate_model':
Expat.xs:257: warning: passing arg 4 of `Perl_hv_store' makes pointer from integer without a cast
Expat.xs: In function `nsStart':
Expat.xs:678: error: `sv_undef' undeclared (first use in this function)
Expat.xs:678: error: (Each undeclared identifier is reported only once
Expat.xs:678: error: for each function it appears in.)
Expat.xs: In function `nsEnd':
Expat.xs:698: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `attributeDecl':
Expat.xs:783: error: `sv_yes' undeclared (first use in this function)
Expat.xs: In function `entityDecl':
Expat.xs:811: error: `sv_undef' undeclared (first use in this function)
Expat.xs:816: error: `sv_yes' undeclared (first use in this function)
Expat.xs: In function `doctypeStart':
Expat.xs:840: error: `sv_undef' undeclared (first use in this function)
Expat.xs:842: error: `sv_yes' undeclared (first use in this function)
Expat.xs:842: error: `sv_no' undeclared (first use in this function)
Expat.xs: In function `xmlDecl':
Expat.xs:880: error: `sv_undef' undeclared (first use in this function)
Expat.xs:884: error: `sv_yes' undeclared (first use in this function)
Expat.xs:884: error: `sv_no' undeclared (first use in this function)
Expat.xs: In function `unparsedEntityDecl':
Expat.xs:910: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `notationDecl':
Expat.xs:940: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `externalEntityRef':
Expat.xs:985: error: `sv_undef' undeclared (first use in this function)
Expat.xs:986: warning: passing arg 1 of `Perl_sv_2mortal' makes pointer from integer without a cast
Expat.xs:1011: warning: cast from pointer to integer of different size
Expat.xs:1024: error: `errgv' undeclared (first use in this function)
Expat.xs:1043: warning: cast from pointer to integer of different size
Expat.xs:1055: error: `na' undeclared (first use in this function)
Expat.xs: In function `unknownEncoding':
Expat.xs:1166: warning: cast to pointer from integer of different size
Expat.xs: In function `XS_XML__Parser__Expat_ParserCreate':
Expat.xs:1281: error: `na' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetStartElementHandler':
Expat.xs:1519: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetEndElementHandler':
Expat.xs:1530: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetCharacterDataHandler':
Expat.xs:1543: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetProcessingInstructionHandler':
Expat.xs:1561: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetCommentHandler':
Expat.xs:1578: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetDefaultHandler':
Expat.xs:1595: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetUnparsedEntityDeclHandler':
Expat.xs:1617: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetNotationDeclHandler':
Expat.xs:1634: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetExternalEntityRefHandler':
Expat.xs:1652: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetExtEntFinishHandler':
Expat.xs:1672: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetEntityDeclHandler':
Expat.xs:1687: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetElementDeclHandler':
Expat.xs:1705: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetAttListDeclHandler':
Expat.xs:1723: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetDoctypeHandler':
Expat.xs:1742: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetEndDoctypeHandler':
Expat.xs:1760: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetXMLDeclHandler':
Expat.xs:1779: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetBase':
Expat.xs:1800: error: `na' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_GetBase':
Expat.xs:1818: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_LoadEncoding':
Expat.xs:1998: error: `sv_undef' undeclared (first use in this function)
Expat.c: In function `XS_XML__Parser__Expat_FreeEncoding':
Expat.c:2464: warning: cast to pointer from integer of different size
Expat.xs: In function `XS_XML__Parser__Expat_OriginalString':
Expat.xs:2097: warning: assignment makes pointer from integer without a cast
Expat.xs: In function `XS_XML__Parser__Expat_SetStartCdataHandler':
Expat.xs:2113: error: `sv_undef' undeclared (first use in this function)
Expat.xs: In function `XS_XML__Parser__Expat_SetEndCdataHandler':
Expat.xs:2131: error: `sv_undef' undeclared (first use in this function)
Expat.c: In function `boot_XML__Parser__Expat':
Expat.c:2729: error: `sv_yes' undeclared (first use in this function)
make[1]: *** [Expat.o] Error 1
make[1]: Leaving directory `/var/tmp/XML-Parser-2.36/Expat'
make: *** [subdirs] Error 2


http://www.xav.com/perl/lib/Pod/perldelta.html

Wednesday, November 25, 2009

To turn off the menu in xterm

Add this to your ~/.Xdefaults file or to /etc/X11/app-defaults/XTerm


xterm*toolBar: false

Monday, November 23, 2009

Excel 2007 'Cannot empty the Clipboard.'



If you drag and drop a cell in Excel 2007 and get a pop error with "Cannot empty the Clipboard.":

Check to see if you have any applications running that interact with the clipboard.

In my case, it was MultiMonitor TaskBar from http://www.mediachance.com/free/multimon.htm
To turn this off:

Right-click on the MultiMonitor TaskBar
-> Click "Properties"
-> Uncheck "Add Multi-Text Clipboard"

There are other solutions for this here:

http://www.online-tech-tips.com/ms-office-tips/cannont-empty-clipboard/

Friday, November 20, 2009

SQLite guis for Windows

I have tried quite a few from:

http://www.sqlite.org/cvstrac/wiki?p=ManagementTools

These are OK:

SQLite2009Pro-v3.6.20.zip
sqlitebrowser-1.3-win.zip
SqliteDev357.zip
SQLiteExpertPersSetup.exe

Multiple field primary key in sqlite


BEGIN TRANSACTION;
CREATE TABLE test_table(
field1 text not null,
field2 text not null,
field3 text not null,
PRIMARY KEY(field1, field2)
);
INSERT INTO "test_table" VALUES('a', 'a', '1');
INSERT INTO "test_table" VALUES('a', 'b', '2');
INSERT INTO "test_table" VALUES('a', 'c', '3');
COMMIT;


http://groups.google.com/group/android-developers/browse_thread/thread/948acbc9358a3095