Perl regex

Anyone knows how do I replace a single character in each line in a file with another character using perl?
I have something like this
This is the begining.
This is a test test.
This is a test test.
This is a test test.
This is the end.
This should be replaced as follows
This is the begining.
This is a text test.
This is a text test.
This is a text test.
This is the end.
I need a perl script to do this. I don't know perl. Anyone knows to do this?

Use java.util.regex package.

Similar Messages

  • Converting sed regex to Java regex

    I am new to reguler expressions.I have to write a regex which will do some replacements
    If the input string is something like test:[email protected];value=abcd
    when I apply the regex on it,this string should be changed to test:[email protected];value=replacedABC
    I am trying to replace test.com and abcd with the values i have supplied...
    The regex I have come up with is in sed
    s/\(^.*@\)\(.*\)$/\1replaceTest.com;value=replacedABC/i
    Now I am trying to get the regex in Java,I would think it will be something like (^.*@\)(.*\)$\1replaceTest.com;value=replacedABC
    But not sure How i can test this.Any idea on how to make sure my java regex is valid and does the required replacements?

    rsv-us wrote:
    Yep.Agreed.
    Since that these replacements should be done in a single regex.Note that the sed replacement I posted is really made of two replacements! Just like your Java solution would.
    I think once we send this regex to the third party,they will haev to use either sed or perl(will perl do this replacements,not sure though) to get the output.
    Since we are not sure what tool/software the third party is going to use,I was trying to see how i can really test this.Then I read about sed and this regex as is didn't work,so,I had to put all the sed required / and then the regex had become like s/\(^.*@\)\(.*\)$"/1replaceTest.com;value=replacedabcd/iAgain: AFAIK that does not work. I tried it like this:
    {code}$ echo test:[email protected];value=abcd | sed 's/\(^.*@\)\(.*\)$"/1replaceTest.com;value=replacedabcd/i'and the following is returned:test:[email protected] that we will have to send the java regex to the third party,I was trying to see how i can convert this sed regex to java.If I am right,with jave regex,we won;t be able to all the finds and replacements in a single regex..right?...If this is true,this will leave me a question of whether I need to send the sed regex to the thrid party or If I send java regex,they have to convert that to either sed or perl regex.
    One more question,can we do thse replacement in perrl also,if so,what will the equivalent regex for this in perl?
    I can't understand what you are talking about. The large amount of spelling errors also doesn't help to make it clearer.
    Good luck though.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • New java-like scripting language w/ powerful regex

    Hi,
    Just wanted to let you know that there's now a new scripting language called P~ with the following important aspects:
    1) matches and exceeds Perl regex solveability -- e.g. offers full regex-based boolean query on non-indexed corpus, offers completely general side-effects, more accurate than Perl code assertions
    2) basic grammar is very Java like
    3) regex grammar is algebraic, not metacharacter-based, leads to more readable and maintainable solutions to hard problems
    4) offers an easy tool to debug matching behavior of your regexes (rules)
    5) though a full featured scripting language, you can write scriptlets and call them from Java classes, with arguments. Allows you to use your regex solutions in Java applications.
    6) the language is offered as a Java library, as well as a standalone application that runs the library. This means that your scripts can import java classes available in the classpath, you can leverage existing Java libraries.
    Check out the website and try it out: http://ptilde.pbwiki.com
    Andy

    True to an extent. We don't yet have lookaround assertions and won't have backreferencing any time soon. But there are same-time assertions which offer much of the same, and allow for boolean query.
    More accurate general statement insertion side-effects (than Perl code assertions) means that your statements are executed if and only they wrap a subpattern that is part of the ultimate best match -- Perl code assertions execute when the automata encounters them, even if where they are in the regex is ultimately not part of the match, or even if there is no match at all. This aspect is a huge part of the solveability advantage.
    As to the regex test cases, there are about 1000, and we will post them soon.

  • Slow urxvt launching after system migration

    Hi everyone!
    I've just migrated my arch system to a new computer (I kept my home partition and backed up pacman's cache and /etc as well as a list of packages installed). I manually installed the main packages needed to set up my system, I didn't re install secondary software yet. However I'm having trouble with urxvt, it takes a few seconds to launch whereas before the migration it would just inmediatly appear. I'm using my old .bashrc and .Xresources, so the configuration is the same as before, also Xterm for example has no problem so it appears to be no problem with .bashrc... Based on what I've read it could be due to font loading, however I have no idea what my previous font configuration actually means:
    URxvt.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1
    URxvt.boldFont: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1
    I must have copied that from some example or something and I don't know what it actually does...
    Nevertheless, if I comment that out from .Xresources, it changes the font used, but it still takes a few seconds to load...
    Anyway, any help is apreciatted, just for reference my .bashrc and .Xresources:
    # /etc/bash.bashrc
    # https://wiki.archlinux.org/index.php/Color_Bash_Prompt
    # This file is sourced by all *interactive* bash shells on startup,
    # including some apparently interactive shells such as scp and rcp
    # that can't tolerate any output. So make sure this doesn't display
    # anything or bad things will happen !
    # Test for an interactive shell. There is no need to set anything
    # past this point for scp and rcp, and it's important to refrain from
    # outputting anything in those cases.
    # If not running interactively, don't do anything!
    [[ $- != *i* ]] && return
    # Bash won't get SIGWINCH if another process is in the foreground.
    # Enable checkwinsize so that bash will check the terminal size when
    # it regains control.
    # http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
    shopt -s checkwinsize
    # Enable history appending instead of overwriting.
    shopt -s histappend
    case ${TERM} in
    xterm*|rxvt*|Eterm|aterm|kterm|gnome*)
    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
    screen)
    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
    esac
    # fortune is a simple program that displays a pseudorandom message
    # from a database of quotations at logon and/or logout.
    # If you wish to use it, please install "fortune-mod" from the
    # official repositories, then uncomment the following line:
    # [[ "$PS1" ]] && /usr/bin/fortune
    # Set colorful PS1 only on colorful terminals.
    # dircolors --print-database uses its own built-in database
    # instead of using /etc/DIR_COLORS. Try to use the external file
    # first to take advantage of user additions. Use internal bash
    # globbing instead of external grep binary.
    # sanitize TERM:
    safe_term=${TERM//[^[:alnum:]]/?}
    match_lhs=""
    [[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
    [[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
    [[ -z ${match_lhs} ]] \
    && type -P dircolors >/dev/null \
    && match_lhs=$(dircolors --print-database)
    if [[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] ; then
    # we have colors :-)
    # Enable colors for ls, etc. Prefer ~/.dir_colors
    if type -P dircolors >/dev/null ; then
    if [[ -f ~/.dir_colors ]] ; then
    eval $(dircolors -b ~/.dir_colors)
    elif [[ -f /etc/DIR_COLORS ]] ; then
    eval $(dircolors -b /etc/DIR_COLORS)
    fi
    fi
    #PS1="$(if [[ ${EUID} == 0 ]]; then echo '\[\033[01;31m\]\h'; else echo '\[\033[01;32m\]\u@\h'; fi)\[\033[01;34m\] \w \$([[ \$? != 0 ]] && echo \"\[\033[01;31m\]:(\[\033[01;34m\] \")\\$\[\033[00m\] "
    # https://bbs.archlinux.org/viewtopic.php?pid=1156660#p1156660
    if [[ ${EUID} == 0 ]] ; then
    sq_color="\[\033[0;31m\]"
    else
    sq_color="\[\033[0;34m\]"
    fi
    PS1="\n\$(if [[ \$? == 0 ]]; then echo \"$sq_color\"; else echo \"\[\033[0;31m\]\"; fi)\342\226\210\342\226\210 [ \W ] [ \t ]\n\[\033[0m\]\342\226\210\342\226\210 "
    # Use this other PS1 string if you want \W for root and \w for all other users:
    # PS1="$(if [[ ${EUID} == 0 ]]; then echo '\[\033[01;31m\]\h\[\033[01;34m\] \W'; else echo '\[\033[01;32m\]\u@\h\[\033[01;34m\] \w'; fi) \$([[ \$? != 0 ]] && echo \"\[\033[01;31m\]:(\[\033[01;34m\] \")\\$\[\033[00m\] "
    alias ls="ls --color=auto"
    alias dir="dir --color=auto"
    alias grep="grep --color=auto"
    alias dmesg='dmesg --color'
    # Uncomment the "Color" line in /etc/pacman.conf instead of uncommenting the following line...!
    # alias pacman="pacman --color=auto"
    else
    # show root@ when we do not have colors
    PS1="\u@\h \w \$([[ \$? != 0 ]] && echo \":( \")\$ "
    # Use this other PS1 string if you want \W for root and \w for all other users:
    # PS1="\u@\h $(if [[ ${EUID} == 0 ]]; then echo '\W'; else echo '\w'; fi) \$([[ \$? != 0 ]] && echo \":( \")\$ "
    fi
    PS2="> "
    PS3="> "
    PS4="+ "
    # Try to keep environment pollution down, EPA loves us.
    unset safe_term match_lhs
    # Try to enable the auto-completion (type: "pacman -S bash-completion" to install it).
    [ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion
    # Try to enable the "Command not found" hook ("pacman -S pkgfile" to install it).
    # See also: https://wiki.archlinux.org/index.php/Bash#The_.22command_not_found.22_hook
    [ -r /usr/share/doc/pkgfile/command-not-found.bash ] && . /usr/share/doc/pkgfile/command-not-found.bash
    # ~/.bashrc
    # If not running interactively, don't do anything
    [[ $- != *i* ]] && return
    alias ls='ls --color=auto'
    #PS1='[\u@\h \W]\$ '
    # Simple note taker
    note () {
    # if file doesn't exist, create it
    if [[ ! -f $HOME/.notes ]]; then
    touch $HOME/.notes
    fi
    if [[ $# -eq 0 ]]; then
    # no arguments, print file
    cat $HOME/.notes
    elif [[ "$1" == "-c" ]]; then
    # clear file
    echo "" > $HOME/.notes
    else
    # add all arguments to file
    echo -e "$@" >> $HOME/.notes
    fi
    # Simple ToDo list
    todo() {
    if [[ ! -f $HOME/.todo ]]; then
    touch $HOME/.todo
    fi
    if [[ $# -eq 0 ]]; then
    cat $HOME/.todo
    elif [[ "$1" == "-l" ]]; then
    cat -n $HOME/.todo
    elif [[ "$1" == "-c" ]]; then
    echo "" > $HOME/.todo
    elif [[ "$1" == "-r" ]]; then
    cat -n $HOME/.todo
    echo -ne "----------------------------\nType a number to remove: "
    read NUMBER
    sed -ie ${NUMBER}d $HOME/.todo
    else
    echo "$@" >> $HOME/.todo
    fi
    #g09root="/home/naoh/Documents/BecaCIN/gaussian"
    #GAUSS_SCRDIR="/home/naoh/Documents/BecaCIN/gaussian/scratch"
    #export g09root GAUSS_SCRDIR
    #. $g09root/g09/bsd/g09.profile
    ! Compile xft: Attempt to find a visual with the given bit depth; option -depth.
    ! URxvt*depth: bitdepth
    ! Compile xft: Turn on/off double-buffering for xft (default enabled). On some card/driver
    ! URxvt*buffered: boolean
    ! Create the window with the specified X window geometry [default 80x24]; option -geometry.
    ! URxvt*geometry: geom
    ! Use the specified colour as the windows background colour [default White]; option -bg.
    ! URxvt*background: colour
    ! Use the specified colour as the windows foreground colour [default Black]; option -fg.
    ! URxvt*foreground: colour
    ! Use the specified colour for the colour value n, where 0-7 corresponds to low-intensity
    ! URxvt*colorn: colour
    ! URxvt*colorBD: colour
    ! Use the specified colour to display bold or italic characters when the foreground colour
    ! URxvt*colorIT: colour
    ! Use the specified colour to display underlined characters when the foreground colour is
    ! URxvt*colorUL: colour
    ! If set, use the specified colour as the colour for the underline itself. If unset, use the
    ! URxvt*underlineColor: colour
    ! If set, use the specified colour as the background for highlighted characters. If unset,
    ! URxvt*highlightColor: colour
    ! If set and highlightColor is set, use the specified colour as the foreground for
    ! URxvt*highlightTextColor: colour
    ! Use the specified colour for the cursor. The default is to use the foreground colour;
    ! URxvt*cursorColor: colour
    ! Use the specified colour for the colour of the cursor text. For this to take effect,
    ! URxvt*cursorColor2: colour
    ! True: simulate reverse video by foreground and background colours; option -rv. False:
    ! URxvt*reverseVideo: boolean
    ! True: specify that jump scrolling should be used. When receiving lots of lines, urxvt will
    ! URxvt*jumpScroll: boolean
    ! True: (the default) specify that skip scrolling should be used. When receiving lots of
    ! URxvt*skipScroll: boolean
    ! Fade the text by the given percentage when focus is lost; option -fade.
    ! URxvt*fading: number
    ! Fade to this colour, when fading is used (see fading:). The default colour is black;
    ! URxvt*fadeColor: colour
    ! Set the application icon pixmap; option -icon.
    ! URxvt*iconFile: file
    ! Use the specified colour for the scrollbar [default #B2B2B2].
    ! URxvt*scrollColor: colour
    ! Use the specified colour for the scrollbars trough area [default #969696]. Only relevant
    ! URxvt*troughColor: colour
    ! The colour of the border around the text area and between the scrollbar and the text.
    ! URxvt*borderColor: colour
    ! Select the fonts to be used. This is a comma separated list of font names that are checked
    ! URxvt*font: fontlist
    ! URxvt*boldFont: fontlist
    ! URxvt*italicFont: fontlist
    ! The font list to use for displaying bold, italic or bold italic characters, respectively.
    ! URxvt*boldItalicFont: fontlist
    ! When font styles are not enabled, or this option is enabled (True, option -is, the
    ! URxvt*intensityStyles: boolean
    ! Set window title string, the default title is the command-line specified after the -e
    ! URxvt*title: string
    ! Set the name used to label the windows icon or displayed in an icon manager window, it
    ! URxvt*iconName: string
    ! True: de-iconify (map) on receipt of a bell character. False: no de-iconify (map) on
    ! URxvt*mapAlert: boolean
    ! True: set the urgency hint for the wm on receipt of a bell character. False: do not set
    ! URxvt*urgentOnBell: boolean
    ! True: use visual bell on receipt of a bell character; option -vb. False: no visual bell
    ! URxvt*visualBell: boolean
    ! True: start as a login shell by prepending a - to argv[0] of the shell; option -ls.
    ! URxvt*loginShell: boolean
    ! True: inhibit writing record into the system log file utmp; option -ut. False: write
    ! URxvt*utmpInhibit: boolean
    ! Specify a command pipe for vt100 printer [default lpr(1)]. Use Print to initiate a screen
    ! URxvt*print-pipe: string
    ! Set scrollbar style to rxvt, plain, next or xterm. plain is the authors favourite.
    ! URxvt*scrollstyle: mode
    ! Set the scrollbar width in pixels.
    ! URxvt*thickness: number
    ! True: enable the scrollbar [default]; option -sb. False: disable the scrollbar; option
    ! URxvt*scrollBar: boolean
    ! True: place the scrollbar on the right of the window; option -sr. False: place the
    ! URxvt*scrollBar_right: true
    ! True: display an rxvt scrollbar without a trough; option -st. False: display an rxvt
    ! URxvt*scrollBar_floating: boolean
    ! Align the top, bottom or centre [default] of the scrollbar thumb with the pointer on
    ! URxvt*scrollBar_align: mode
    ! True: scroll to bottom when tty receives output; option -si. False: do not scroll to
    ! URxvt*scrollTtyOutput: boolean
    ! True: scroll with scrollback buffer when tty receives new lines (i.e. try to show the
    ! URxvt*scrollWithBuffer: boolean
    ! True: scroll to bottom when a non-special key is pressed. Special keys are those which are
    ! URxvt*scrollTtyKeypress: boolean
    ! Save number lines in the scrollback buffer [default 64]. This resource is limited on most
    ! URxvt*saveLines: number
    ! Internal border of number pixels. This resource is limited to 100; option -b.
    ! URxvt*internalBorder: number
    ! External border of number pixels. This resource is limited to 100; option -w, -bw,
    ! URxvt*externalBorder: number
    ! Set MWM hints to request a borderless window, i.e. if honoured by the WM, the rxvt-unicode
    ! URxvt*borderLess: boolean
    ! Compile frills: Disable the usage of the built-in block graphics/line drawing characters
    ! URxvt*skipBuiltinGlyphs: boolean
    ! Specifies the terminal type name to be set in the TERM environment variable; option -tn.
    ! URxvt*termName: termname
    ! Specifies number of lines (pixel height) to insert between each row of the display
    ! URxvt*lineSpace: number
    ! True: handle Meta (Alt) + keypress to set the 8th bit. False: handle Meta (Alt) + keypress
    ! URxvt*meta8: boolean
    ! True: the mouse wheel scrolls a page full. False: the mouse wheel scrolls five lines
    ! URxvt*mouseWheelScrollPage: boolean
    ! True: store tabs as wide characters. False: interpret tabs as cursor movement only; option
    ! URxvt*pastableTabs: boolean
    ! True: blink the cursor. False: do not blink the cursor [default]; option -bc.
    ! URxvt*cursorBlink: boolean
    ! True: Make the cursor underlined. False: Make the cursor a box [default]; option -uc.
    ! URxvt*cursorUnderline: boolean
    ! True: blank the pointer when a key is pressed or after a set number of seconds of
    ! URxvt*pointerBlank: boolean
    ! Mouse pointer foreground colour.
    ! URxvt*pointerColor: colour
    ! Mouse pointer background colour.
    ! URxvt*pointerColor2: colour
    ! Specifies number of seconds before blanking the pointer [default 2]. Use a large number
    ! URxvt*pointerBlankDelay: number
    ! The string to send when the backspace key is pressed. If set to DEC or unset it will send
    ! URxvt*backspacekey: string
    ! The string to send when the delete key (not the keypad delete key) is pressed. If unset it
    ! URxvt*deletekey: string
    ! The characters used as delimiters for double-click word selection (whitespace delimiting
    ! URxvt*cutchars: string
    ! URxvt*{|}
    ! OverTheSpot, OffTheSpot, Root; option -pt.
    ! URxvt*preeditType: style
    ! name of inputMethod to use; option -im.
    ! URxvt*inputMethod: name
    ! The locale to use for opening the IM. You can use an "LC_CTYPE" of e.g. "de_DE.UTF-8" for
    ! URxvt*imLocale: name
    ! Specify the font-set used for XIM styles "OverTheSpot" or "OffTheSpot". It must be a
    ! URxvt*imFont: fontset
    ! Change the meaning of triple-click selection with the left mouse button. Instead of
    ! URxvt*tripleclickwords: boolean
    ! Enables "insecure" mode. Rxvt-unicode offers some escape sequences that echo arbitrary
    ! URxvt*insecure: boolean
    ! Set the key to be interpreted as the Meta key to: alt, meta, hyper, super, mod1, mod2,
    ! URxvt*modifier: modifier
    ! Specify the reply rxvt-unicode sends to the shell when an ENQ (control-E) character is
    ! URxvt*answerbackString: string
    ! Turn on/off secondary screen (default enabled).
    ! URxvt*secondaryScreen: boolean
    ! Turn on/off secondary screen scroll (default enabled). If this option is enabled, scrolls
    ! URxvt*secondaryScroll: boolean
    ! Turn on/off hold window after exit support. If enabled, urxvt will not immediately destroy
    ! URxvt*hold: boolean
    ! Sets the working directory for the shell (or the command specified via -e). The path must
    ! URxvt*chdir: path
    ! Compile frills: Associate string with keysym sym. The intervening resource name keysym.
    ! URxvt*keysym.sym: string
    ! URxvt*perl-ext-common: string
    ! Comma-separated list(s) of perl extension scripts (default: "default") to use in this
    ! URxvt*perl-ext: string
    ! Perl code to be evaluated when all extensions have been registered. See the urxvtperl(3)
    ! URxvt*perl-eval: string
    ! Colon-separated list of additional directories that hold extension scripts. When looking
    ! URxvt*perl-lib: path
    ! Additional selection patterns, see the urxvtperl(3) manpage for details.
    ! URxvt*selection.pattern-idx: perl-regex
    ! Selection auto-transform patterns, see the urxvtperl(3) manpage for details.
    ! URxvt*selection-autotransform.idx: perl-transform
    ! Sets the hotkey that starts the incremental scrollback buffer search (default: "M-s").
    ! URxvt*searchable-scrollback: keysym
    ! Specifies the program to be started with a URL argument. Used by the "selection-popup" and
    ! URxvt*url-launcher: string
    ! Compile frills: Sets the WM_TRANSIENT_FOR property to the given window id.
    ! URxvt*transient-for: windowid
    ! Compile frills: Sets override-redirect for the terminal window, making it almost invisible
    ! URxvt*override-redirect: boolean
    ! Turn on/off ISO 14755 (default enabled).
    ! URxvt*iso14755: boolean
    ! Turn on/off ISO 14755 5.2 mode (default enabled).
    ! URxvt*iso14755_52: boolean
    ! #### configuracion copiada de
    ! http://wiki.afterstep.org/index.php?title=Rxvt-Unicode_Configuration_Tutorial
    ! transparency - true or false (default)
    ! URxvt*transparent: true
    ! tint with any color; i.e., blue, red, tomato4, olivedrab2, etc.
    ! some nice listings are at:
    ! http://www.nisrv.com/drupal/?q=node/11
    ! http://www.htmlgoodies.com/tutorials/colors/article.php/3478921
    ! URxvt*tintColor: Blue
    ! shading - 0 to 99 darkens, 101 to 200 lightens.
    ! Dont use with tintColor; just use a darker or lighter color instead.
    !URxvt*shading: 40
    ! scrollback buffer lines - 65535 is max on most machines (64 is default)
    URxvt*saveLines: 12000
    ! font color (default is black)
    URxvt*foreground: White
    ! background color (prior to tinting) (default is white)
    !URxvt*background: Black
    URxvt.depth: 32
    URxvt.background: rgba:1111/1111/1111/dddd
    ! Xft (X FreeType) with Bitstream, DejaVu, Liberation, or Terminus fonts:
    ! Fedora/debian packages: libXft/libxft2
    ! An anti-aliased font setup with Xft looks fantastic; it can be a bit choppy
    ! on older systems. You can always turn off anti-aliasing (antialias=false) if
    ! your terminal is sluggish. Use only ONE of the Xft pairs below:
    ! Xft: Bitstream fonts
    ! Fedora/debian packages: bitstream-vera-sans-mono-fonts/ttf-bitstream-vera
    !URxvt*font: xft:Bitstream Vera Sans Mono:pixelsize=12:antialias=true:hinting=true
    !URxvt*boldFont: xft:Bitstream Vera Sans Mono:bold:pixelsize=12:antialias=true:hinting=true
    ! Xft: DejaVu fonts
    ! Fedora/debian packages: dejavu-sans-mono-fonts/ttf-dejavu
    !URxvt*font: xft:DejaVu Sans Mono:pixelsize=12:antialias=true:hinting=true
    !URxvt*boldFont: xft:DejaVu Sans Mono:bold:pixelsize=12:antialias=true:hinting=true
    ! Xft: Liberation fonts
    ! Fedora/debian packages: liberation-mono-fonts/ttf-liberation
    !URxvt*font: xft:Liberation Mono:pixelsize=13:antialias=true:hinting=true
    !URxvt*boldFont: xft:Liberation Mono:bold:pixelsize=13:antialias=true:hinting=true
    ! Xft: Terminus fonts
    ! Fedora/debian packages: terminus-fonts/xfonts-terminus
    !URxvt*font: xft:terminus:pixelsize=15
    !URxvt*boldFont: xft:terminus:bold:pixelsize=15
    ! Traditional fonts - a more traditional font setup in lieu of xft
    !URxvt*font:-*-courier-medium-r-normal-*-14-*-*-*-*-*-iso8859-1
    !URxvt*boldFont:-*-courier-bold-r-normal-*-14-*-*-*-*-*-iso8859-1
    URxvt.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1
    URxvt.boldFont: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1
    ! Replace blue folder colors with a lighter shade for clarity. To
    ! set colored folders and files within urxvt, xterm, and aterm, add
    ! the following line to your ~/.bashrc ($HOME/.bashrc) file under
    ! the heading "! User specific aliases and functions":
    ! alias ls="ls -h --color=auto"
    URxvt*color4: RoyalBlue
    URxvt*color12: RoyalBlue
    ! scrollbar - true (default) or false
    URxvt*scrollBar: true
    ! scrollbar position - left=false (default) or right=true
    URxvt*scrollBar_right: true
    ! scrollbar style - rxvt (default), plain, next, or xterm
    URxvt*scrollstyle: rxvt
    ! Perl extensions
    URxvt*perl-ext-common: default,matcher,tabbed
    !URxvt*perl-ext-common: default,matcher
    !Open URLs with firefox
    URxvt.url-launcher: /usr/bin/firefox
    URxvt.matcher.button: 1
    ! Tabs
    URxvt.tabbed.tabbar-fg: 2
    URxvt.tabbed.tabbar-bg: 0
    URxvt.tabbed.tab-fg: 3
    URxvt.tabbed.tab-bg: 0
    Thanks!

    strace -o log urxvt -e exit
    execve("/usr/bin/urxvt", ["urxvt", "-e", "exit"], [/* 24 vars */]) = 0
    brk(0) = 0x21ee000
    access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
    open("/usr/lib/perl5/core_perl/CORE/tls/x86_64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/CORE/tls/x86_64", 0x7fffb449bba0) = -1 ENOENT (No such file or directory)
    open("/usr/lib/perl5/core_perl/CORE/tls/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/CORE/tls", 0x7fffb449bba0) = -1 ENOENT (No such file or directory)
    open("/usr/lib/perl5/core_perl/CORE/x86_64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/CORE/x86_64", 0x7fffb449bba0) = -1 ENOENT (No such file or directory)
    open("/usr/lib/perl5/core_perl/CORE/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/CORE", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
    open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
    fstat(3, {st_mode=S_IFREG|0644, st_size=80332, ...}) = 0
    mmap(NULL, 80332, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9adfd01000
    close(3) = 0
    open("/usr/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200U\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=1059240, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfd00000
    mmap(NULL, 3154264, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adf7f3000
    mprotect(0x7f9adf8f4000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adfaf4000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x101000) = 0x7f9adfaf4000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libfontconfig.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libfontconfig.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000p\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=244696, ...}) = 0
    mmap(NULL, 2340456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adf5b7000
    mprotect(0x7f9adf5f1000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adf7f0000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x39000) = 0x7f9adf7f0000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXft.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libXft.so.2", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000C\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=85432, ...}) = 0
    mmap(NULL, 2180648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adf3a2000
    mprotect(0x7f9adf3b6000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adf5b5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f9adf5b5000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXrender.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libXrender.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\33\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=39376, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcff000
    mmap(NULL, 2134664, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adf198000
    mprotect(0x7f9adf1a1000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adf3a0000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f9adf3a0000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libX11.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libX11.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\335\1\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=1289752, ...}) = 0
    mmap(NULL, 3386784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adee5d000
    mprotect(0x7f9adef92000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adf192000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x135000) = 0x7f9adf192000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libstartup-notification-1.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libstartup-notification-1.so.0", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3003\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=39576, ...}) = 0
    mmap(NULL, 2135192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adec53000
    mprotect(0x7f9adec5c000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adee5b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f9adee5b000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libperl.so", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\30\3\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0555, st_size=1740664, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcfe000
    mmap(NULL, 3735184, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9ade8c3000
    mprotect(0x7f9adea49000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adec49000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x186000) = 0x7f9adec49000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20o\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=144938, ...}) = 0
    mmap(NULL, 2212976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9ade6a6000
    mprotect(0x7f9ade6be000, 2093056, PROT_NONE) = 0
    mmap(0x7f9ade8bd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f9ade8bd000
    mmap(0x7f9ade8bf000, 13424, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f9ade8bf000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\34\2\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=2031229, ...}) = 0
    mmap(NULL, 3840528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9ade2fc000
    mprotect(0x7f9ade49c000, 2097152, PROT_NONE) = 0
    mmap(0x7f9ade69c000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a0000) = 0x7f9ade69c000
    mmap(0x7f9ade6a2000, 14864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f9ade6a2000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260*\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0644, st_size=89000, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcfd000
    mmap(NULL, 2184800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9ade0e6000
    mprotect(0x7f9ade0fb000, 2097152, PROT_NONE) = 0
    mmap(0x7f9ade2fb000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f9ade2fb000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libfreetype.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libfreetype.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\335\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=675656, ...}) = 0
    mmap(NULL, 2770832, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adde41000
    mprotect(0x7f9addee0000, 2093056, PROT_NONE) = 0
    mmap(0x7f9ade0df000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9e000) = 0x7f9ade0df000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libexpat.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libexpat.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`?\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=170144, ...}) = 0
    mmap(NULL, 2265320, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9addc17000
    mprotect(0x7f9addc3e000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adde3e000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x27000) = 0x7f9adde3e000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libxcb.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libxcb.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\244\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=129776, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcfc000
    mmap(NULL, 2225160, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9add9f7000
    mprotect(0x7f9adda15000, 2097152, PROT_NONE) = 0
    mmap(0x7f9addc15000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e000) = 0x7f9addc15000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=14648, ...}) = 0
    mmap(NULL, 2109712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9add7f3000
    mprotect(0x7f9add7f6000, 2093056, PROT_NONE) = 0
    mmap(0x7f9add9f5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f9add9f5000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libxcb-util.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libxcb-util.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260$\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=20712, ...}) = 0
    mmap(NULL, 2115824, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9add5ee000
    mprotect(0x7f9add5f2000, 2097152, PROT_NONE) = 0
    mmap(0x7f9add7f2000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f9add7f2000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libX11-xcb.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libX11-xcb.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \6\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=6008, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcfb000
    mmap(NULL, 2101304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9add3ec000
    mprotect(0x7f9add3ed000, 2093056, PROT_NONE) = 0
    mmap(0x7f9add5ec000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0) = 0x7f9add5ec000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\f\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=35160, ...}) = 0
    mmap(NULL, 2318848, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9add1b5000
    mprotect(0x7f9add1bd000, 2093056, PROT_NONE) = 0
    mmap(0x7f9add3bc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f9add3bc000
    mmap(0x7f9add3be000, 184832, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f9add3be000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000#\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=88592, ...}) = 0
    mmap(NULL, 2183688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adcf9f000
    mprotect(0x7f9adcfb4000, 2093056, PROT_NONE) = 0
    mmap(0x7f9add1b3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f9add1b3000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libbz2.so.1.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libbz2.so.1.0", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\27\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=65760, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcfa000
    mmap(NULL, 2160936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adcd8f000
    mprotect(0x7f9adcd9e000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adcf9d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7f9adcf9d000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libpng16.so.16", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libpng16.so.16", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20`\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=216216, ...}) = 0
    mmap(NULL, 2311384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adcb5a000
    mprotect(0x7f9adcb8e000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adcd8d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x33000) = 0x7f9adcd8d000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXau.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libXau.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \17\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=14512, ...}) = 0
    mmap(NULL, 2109744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adc956000
    mprotect(0x7f9adc958000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adcb58000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f9adcb58000
    close(3) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXdmcp.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libXdmcp.so.6", O_RDONLY|O_CLOEXEC) = 3
    read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\23\0\0\0\0\0\0"..., 832) = 832
    fstat(3, {st_mode=S_IFREG|0755, st_size=22632, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcf9000
    mmap(NULL, 2117864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f9adc750000
    mprotect(0x7f9adc755000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adc954000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f9adc954000
    close(3) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcf8000
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcf7000
    mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfcf5000
    arch_prctl(ARCH_SET_FS, 0x7f9adfcf5740) = 0
    mprotect(0x7f9ade69c000, 16384, PROT_READ) = 0
    mprotect(0x7f9adc954000, 4096, PROT_READ) = 0
    mprotect(0x7f9adcb58000, 4096, PROT_READ) = 0
    mprotect(0x7f9adfaf4000, 4096, PROT_READ) = 0
    mprotect(0x7f9add1b3000, 4096, PROT_READ) = 0
    mprotect(0x7f9adcd8d000, 4096, PROT_READ) = 0
    mprotect(0x7f9add3bc000, 4096, PROT_READ) = 0
    mprotect(0x7f9addc15000, 4096, PROT_READ) = 0
    mprotect(0x7f9add9f5000, 4096, PROT_READ) = 0
    mprotect(0x7f9adf192000, 4096, PROT_READ) = 0
    mprotect(0x7f9add5ec000, 4096, PROT_READ) = 0
    mprotect(0x7f9adde3e000, 8192, PROT_READ) = 0
    mprotect(0x7f9ade0df000, 24576, PROT_READ) = 0
    mprotect(0x7f9ade8bd000, 4096, PROT_READ) = 0
    mprotect(0x7f9adec49000, 16384, PROT_READ) = 0
    mprotect(0x7f9adee5b000, 4096, PROT_READ) = 0
    mprotect(0x7f9adf3a0000, 4096, PROT_READ) = 0
    mprotect(0x7f9adf7f0000, 8192, PROT_READ) = 0
    mprotect(0x7f9adf5b5000, 4096, PROT_READ) = 0
    mprotect(0x72e000, 8192, PROT_READ) = 0
    mprotect(0x7f9adfd15000, 4096, PROT_READ) = 0
    munmap(0x7f9adfd01000, 80332) = 0
    set_tid_address(0x7f9adfcf5a10) = 4336
    set_robust_list(0x7f9adfcf5a20, 24) = 0
    rt_sigaction(SIGRTMIN, {0x7f9ade6ac9f0, [], SA_RESTORER|SA_SIGINFO, 0x7f9ade6b5870}, NULL, 8) = 0
    rt_sigaction(SIGRT_1, {0x7f9ade6aca80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f9ade6b5870}, NULL, 8) = 0
    rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
    getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
    fcntl(0, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE)
    fcntl(1, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE)
    fcntl(2, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE)
    getuid() = 1000
    getgid() = 100
    geteuid() = 1000
    getegid() = 100
    ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
    dup2(2, 0) = 0
    dup2(2, 1) = 1
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    epoll_create1(EPOLL_CLOEXEC) = 3
    fcntl(3, F_SETFD, FD_CLOEXEC) = 0
    brk(0) = 0x21ee000
    brk(0x220f000) = 0x220f000
    pipe([4, 5]) = 0
    fcntl(4, F_SETFD, FD_CLOEXEC) = 0
    fcntl(4, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
    fcntl(5, F_SETFD, FD_CLOEXEC) = 0
    fcntl(5, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
    rt_sigaction(SIGCHLD, {0x436480, ~[RTMIN RT_1], SA_RESTORER|SA_RESTART, 0x7f9ade6b5870}, NULL, 8) = 0
    rt_sigaction(SIGHUP, {SIG_IGN, [HUP], SA_RESTORER|SA_RESTART, 0x7f9ade331390}, {SIG_DFL, [], 0}, 8) = 0
    rt_sigaction(SIGPIPE, {SIG_IGN, [PIPE], SA_RESTORER|SA_RESTART, 0x7f9ade331390}, {SIG_DFL, [], 0}, 8) = 0
    rt_sigaction(SIGTERM, {0x436480, ~[RTMIN RT_1], SA_RESTORER|SA_RESTART, 0x7f9ade6b5870}, NULL, 8) = 0
    rt_sigaction(SIGINT, {0x436480, ~[RTMIN RT_1], SA_RESTORER|SA_RESTART, 0x7f9ade6b5870}, NULL, 8) = 0
    open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 6
    fstat(6, {st_mode=S_IFREG|0644, st_size=1613216, ...}) = 0
    mmap(NULL, 1613216, PROT_READ, MAP_PRIVATE, 6, 0) = 0x7f9adfb6b000
    close(6) = 0
    socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0) = 6
    connect(6, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
    getpeername(6, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, [20]) = 0
    uname({sys="Linux", node="arch", ...}) = 0
    access("/home/naoh/.Xauthority", R_OK) = 0
    open("/home/naoh/.Xauthority", O_RDONLY) = 7
    fstat(7, {st_mode=S_IFREG|0600, st_size=49, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9adfd14000
    read(7, "\1\0\0\4arch\0\0010\0\22MIT-MAGIC-COOKIE-1\0"..., 4096) = 49
    read(7, "", 4096) = 0
    close(7) = 0
    munmap(0x7f9adfd14000, 4096) = 0
    getsockname(6, {sa_family=AF_LOCAL, NULL}, [2]) = 0
    fcntl(6, F_GETFL) = 0x2 (flags O_RDWR)
    fcntl(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0
    fcntl(6, F_SETFD, FD_CLOEXEC) = 0
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"l\0\v\0\0\0\22\0\20\0\0\0", 12}, {"", 0}, {"MIT-MAGIC-COOKIE-1", 18}, {"\0\0", 2}, {"\230\22|\350 GxS-2,\352\251\245\245\265", 16}, {"", 0}], 6) = 48
    recvfrom(6, 0x21f8c10, 8, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvfrom(6, "\1\0\v\0\0\0s\2", 8, 0, NULL, NULL) = 8
    recvfrom(6, "\310\6\256\0\0\0 \1\377\377\37\0\0\1\0\0\24\0\377\377\1\7\0\0 \10\377\0\0\0\0"..., 2508, 0, NULL, NULL) = 2508
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"b\0\5\0\f\0\0\0BIG-REQUESTS", 20}], 1) = 20
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\1\0\0\0\0\0\1\205\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"\205\0\1\0", 4}], 1) = 4
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\2\0\0\0\0\0\377\377?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449bfa0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"7\0\5\0\0\0 \1_\1\0\0\10\0\0\0\377\377\377\0\24\0\6\0_\1\0\0\27\0\0\0"..., 44}, {NULL, 0}, {"", 0}], 3) = 44
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"b\0\5\0\t\0 \1", 8}, {"XKEYBOARD", 9}, {"\0\0\0", 3}], 3) = 20
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\5\0\0\0\0\0\1\207U\211\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449bee0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bee0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"\207\0\2\0\1\0\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\6\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449bf70, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bf70, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"\20\0\3\0\4\0\0\0TEXT\20\0\6\0\r\0\377\0COMPOUND_TEX"..., 836}, {NULL, 0}, {"", 0}], 3) = 836
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\7\0\0\0\0\0\25\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 1248
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bfe0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"\24\0\6\0_\1\0\0+\1\0\0\37\0\0\0\0\0\0\0\0\341\365\5", 24}, {NULL, 0}, {"", 0}], 3) = 24
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449b9c0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449b9c0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    futex(0x7f9add9f60c8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXcursor.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 7
    fstat(7, {st_mode=S_IFREG|0644, st_size=80332, ...}) = 0
    mmap(NULL, 80332, PROT_READ, MAP_PRIVATE, 7, 0) = 0x7f9adfd01000
    close(7) = 0
    open("/usr/lib/libXcursor.so.1", O_RDONLY|O_CLOEXEC) = 7
    read(7, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p+\0\0\0\0\0\0"..., 832) = 832
    fstat(7, {st_mode=S_IFREG|0755, st_size=43680, ...}) = 0
    mmap(NULL, 2138928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 0x7f9adc545000
    mprotect(0x7f9adc54f000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adc74e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x9000) = 0x7f9adc74e000
    close(7) = 0
    open("/usr/lib/perl5/core_perl/CORE/libXfixes.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
    open("/usr/lib/libXfixes.so.3", O_RDONLY|O_CLOEXEC) = 7
    read(7, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\25\0\0\0\0\0\0"..., 832) = 832
    fstat(7, {st_mode=S_IFREG|0755, st_size=22576, ...}) = 0
    mmap(NULL, 2117912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 0x7f9adc33f000
    mprotect(0x7f9adc344000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adc543000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x4000) = 0x7f9adc543000
    close(7) = 0
    mprotect(0x7f9adc543000, 4096, PROT_READ) = 0
    mprotect(0x7f9adc74e000, 4096, PROT_READ) = 0
    munmap(0x7f9adfd01000, 80332) = 0
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"-\0\5\0\1\0 \1\5\0\0\0fixed\0\0\0b\341\4\0\6\0ND", 28}, {"RENDER", 6}, {"\0\0", 2}], 3) = 36
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0000\0\0\0\0\0\1\213\0\216\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32
    recvmsg(6, 0x7fffb449be90, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449be90, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"\213\0\3\0\0\0\0\0\v\0\0\0\213\1\1\0", 16}, {NULL, 0}, {"", 0}], 3) = 16
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0001\0\0\0\0\0\0\0\0\0\v\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 1684
    recvmsg(6, 0x7fffb449bea0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bea0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bea0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bea0, 0) = -1 EAGAIN (Resource temporarily unavailable)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/home/naoh/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
    uname({sys="Linux", node="arch", ...}) = 0
    open("/home/naoh/.Xdefaults-arch", O_RDONLY) = -1 ENOENT (No such file or directory)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"/\0\2\0\1\0 \1", 8}, {NULL, 0}, {"", 0}], 3) = 8
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0003\0005\3\0\0\0\0\0\0\6\0\377\377\366\377\0\0\0\0\0\0\2\0\6\0\6\0\v\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 3316
    recvmsg(6, 0x7fffb449bf30, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449bf30, 0) = -1 EAGAIN (Resource temporarily unavailable)
    poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])
    writev(6, [{"^\0\10\0\2\0 \1\1\0 \1\1\0 \1 \0 \0\0\0\0\0\0\0\0\0\0\0\0\0"..., 48}, {NULL, 0}, {"", 0}], 3) = 48
    poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])
    recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0006\0\16\0\0\0\6\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 88
    recvmsg(6, 0x7fffb449c050, 0) = -1 EAGAIN (Resource temporarily unavailable)
    recvmsg(6, 0x7fffb449c050, 0) = -1 EAGAIN (Resource temporarily unavailable)
    getsockname(6, {sa_family=AF_LOCAL, NULL}, [2]) = 0
    fcntl(6, F_SETFD, FD_CLOEXEC) = 0
    rt_sigaction(SIGFPE, {SIG_IGN, [FPE], SA_RESTORER|SA_RESTART, 0x7f9ade331390}, {SIG_DFL, [], 0}, 8) = 0
    brk(0x2230000) = 0x2230000
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    open("/dev/urandom", O_RDONLY) = 7
    read(7, "O\0003n", 4) = 4
    close(7) = 0
    readlink("/proc/self/exe", "/usr/bin/urxvt", 4095) = 14
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
    lseek(0, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
    ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
    lseek(1, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
    ioctl(2, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
    lseek(2, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
    open("/dev/null", O_RDONLY) = 7
    ioctl(7, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449be20) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(7, 0, SEEK_CUR) = 0
    fcntl(7, F_SETFD, FD_CLOEXEC) = 0
    fstat(7, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 3), ...}) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    rt_sigaction(SIGCHLD, NULL, {0x436480, ~[KILL STOP RTMIN RT_1], SA_RESTORER|SA_RESTART, 0x7f9ade6b5870}, 8) = 0
    brk(0x2251000) = 0x2251000
    brk(0x2272000) = 0x2272000
    stat("/usr/lib/urxvt/urxvt.pmc", 0x7fffb449ba10) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/urxvt.pm", {st_mode=S_IFREG|0644, st_size=60715, ...}) = 0
    open("/usr/lib/urxvt/urxvt.pm", O_RDONLY) = 8
    ioctl(8, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b720) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(8, 0, SEEK_CUR) = 0
    read(8, "=encoding utf8\n\n=head1 NAME\n\nurx"..., 8192) = 8192
    read(8, " filter/change and output the te"..., 8192) = 8192
    stat("/usr/lib/urxvt/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/utf8.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/utf8.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/utf8.pm", {st_mode=S_IFREG|0444, st_size=7795, ...}) = 0
    open("/usr/share/perl5/core_perl/utf8.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package utf8;\n\n$utf8::hint_bits "..., 8192) = 7795
    lseek(9, 378, SEEK_SET) = 378
    lseek(9, 0, SEEK_CUR) = 378
    close(9) = 0
    stat("/usr/lib/urxvt/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/strict.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/strict.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/strict.pm", {st_mode=S_IFREG|0444, st_size=3933, ...}) = 0
    open("/usr/share/perl5/core_perl/strict.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package strict;\n\n$strict::VERSIO"..., 8192) = 3933
    brk(0x2293000) = 0x2293000
    lseek(9, 1005, SEEK_SET) = 1005
    lseek(9, 0, SEEK_CUR) = 1005
    close(9) = 0
    stat("/usr/lib/urxvt/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Carp.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/Carp.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/Carp.pm", {st_mode=S_IFREG|0444, st_size=22004, ...}) = 0
    open("/usr/share/perl5/core_perl/Carp.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package Carp;\n\n{ use 5.006; }\nus"..., 8192) = 8192
    stat("/usr/lib/urxvt/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/warnings.pm", 0x7fffb449ace0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/warnings.pmc", 0x7fffb449ad90) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/warnings.pm", {st_mode=S_IFREG|0444, st_size=20624, ...}) = 0
    open("/usr/share/perl5/core_perl/warnings.pm", O_RDONLY) = 10
    ioctl(10, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449aaa0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(10, 0, SEEK_CUR) = 0
    read(10, "# -*- buffer-read-only: t -*-\n# "..., 8192) = 8192
    read(10, "\", # [14]\n 'overflow'\t\t=> \"\\x"..., 8192) = 8192
    brk(0x22b4000) = 0x22b4000
    read(10, "ndef, @_) ;\n}\n\nsub import \n{\n "..., 8192) = 4240
    brk(0x22d5000) = 0x22d5000
    read(10, "", 8192) = 0
    close(10) = 0
    read(9, " # This *shouldn't* ha"..., 8192) = 8192
    brk(0x22f6000) = 0x22f6000
    lseek(9, 13751, SEEK_SET) = 13751
    lseek(9, 0, SEEK_CUR) = 13751
    close(9) = 0
    stat("/usr/lib/urxvt/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Exporter.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/Exporter.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/Exporter.pm", {st_mode=S_IFREG|0444, st_size=18752, ...}) = 0
    open("/usr/share/perl5/core_perl/Exporter.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package Exporter;\n\nrequire 5.006"..., 8192) = 8192
    brk(0x2319000) = 0x2319000
    lseek(9, 2366, SEEK_SET) = 2366
    lseek(9, 0, SEEK_CUR) = 2366
    close(9) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    stat("/usr/lib/urxvt/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/Scalar/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Scalar/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Scalar/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Scalar/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Scalar/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Scalar/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Scalar/Util.pm", {st_mode=S_IFREG|0444, st_size=8300, ...}) = 0
    open("/usr/lib/perl5/core_perl/Scalar/Util.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "# Scalar::Util.pm\n#\n# Copyright "..., 8192) = 8192
    lseek(9, 1109, SEEK_SET) = 1109
    lseek(9, 0, SEEK_CUR) = 1109
    close(9) = 0
    stat("/usr/lib/urxvt/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/List/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/List/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/List/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/List/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/List/Util.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/List/Util.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/List/Util.pm", {st_mode=S_IFREG|0444, st_size=6391, ...}) = 0
    open("/usr/lib/perl5/core_perl/List/Util.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "# List::Util.pm\n#\n# Copyright (c"..., 8192) = 6391
    lseek(9, 652, SEEK_SET) = 652
    lseek(9, 0, SEEK_CUR) = 652
    close(9) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    stat("/usr/lib/urxvt/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/XSLoader.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/XSLoader.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/XSLoader.pm", {st_mode=S_IFREG|0444, st_size=10234, ...}) = 0
    open("/usr/share/perl5/core_perl/XSLoader.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "# Generated from XSLoader.pm.PL "..., 8192) = 8192
    lseek(9, 2886, SEEK_SET) = 2886
    lseek(9, 0, SEEK_CUR) = 2886
    close(9) = 0
    stat("/usr/lib/perl5/core_perl/auto/List/Util/Util.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/List/Util/Util.so", {st_mode=S_IFREG|0555, st_size=31861, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/List/Util/Util.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    open("/usr/lib/perl5/core_perl/auto/List/Util/Util.so", O_RDONLY|O_CLOEXEC) = 9
    read(9, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \26\0\0\0\0\0\0"..., 832) = 832
    fstat(9, {st_mode=S_IFREG|0555, st_size=31861, ...}) = 0
    mmap(NULL, 2122192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 9, 0) = 0x7f9adc138000
    mprotect(0x7f9adc13d000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adc33d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 9, 0x5000) = 0x7f9adc33d000
    close(9) = 0
    mprotect(0x7f9adc33d000, 4096, PROT_READ) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    read(8, "\nThe following \"macros\" deal wit"..., 8192) = 8192
    brk(0x233a000) = 0x233a000
    brk(0x235b000) = 0x235b000
    read(8, "e[, $hook_name..])\n\nDynamically "..., 8192) = 8192
    brk(0x237c000) = 0x237c000
    read(8, "o14755_52 jumpScroll loginShell\n"..., 8192) = 8192
    read(8, " need. Correctly\naccounts for wi"..., 8192) = 8192
    read(8, "row|col pair within the logical\n"..., 8192) = 8192
    brk(0x239d000) = 0x239d000
    stat("/usr/lib/urxvt/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/integer.pm", 0x7fffb449b320) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/integer.pmc", 0x7fffb449b3d0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/core_perl/integer.pm", {st_mode=S_IFREG|0444, st_size=3266, ...}) = 0
    open("/usr/share/perl5/core_perl/integer.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b0e0) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package integer;\n\nour $VERSION ="..., 8192) = 3266
    read(9, "", 8192) = 0
    close(9) = 0
    read(8, "hen the timer\nis automatically r"..., 8192) = 3371
    read(8, "", 8192) = 0
    close(8) = 0
    brk(0x23be000) = 0x23be000
    close(7) = 0
    stat("/home/naoh/.urxvt/ext/option-popup", 0x2207910) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/perl/option-popup", {st_mode=S_IFREG|0644, st_size=2172, ...}) = 0
    open("/usr/lib/urxvt/perl/option-popup", O_RDONLY) = 7
    ioctl(7, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449bc10) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(7, 0, SEEK_CUR) = 0
    fstat(7, {st_mode=S_IFREG|0644, st_size=2172, ...}) = 0
    fcntl(7, F_SETFD, FD_CLOEXEC) = 0
    fstat(7, {st_mode=S_IFREG|0644, st_size=2172, ...}) = 0
    read(7, "#! perl\n\n=head1 NAME\n\noption-pop"..., 8192) = 2172
    read(7, "", 8192) = 0
    close(7) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    stat("/home/naoh/.urxvt/ext/readline", 0x2207910) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/perl/readline", {st_mode=S_IFREG|0644, st_size=2069, ...}) = 0
    open("/usr/lib/urxvt/perl/readline", O_RDONLY) = 7
    ioctl(7, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449bc10) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(7, 0, SEEK_CUR) = 0
    fstat(7, {st_mode=S_IFREG|0644, st_size=2069, ...}) = 0
    fcntl(7, F_SETFD, FD_CLOEXEC) = 0
    fstat(7, {st_mode=S_IFREG|0644, st_size=2069, ...}) = 0
    read(7, "#! perl\n\n=head1 NAME\n\nreadline -"..., 8192) = 2069
    read(7, "", 8192) = 0
    stat("/usr/lib/urxvt/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/POSIX.pm", 0x7fffb449b8a0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/POSIX.pm", 0x7fffb449b8a0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/POSIX.pm", 0x7fffb449b8a0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/POSIX.pm", 0x7fffb449b8a0) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/POSIX.pm", 0x7fffb449b8a0) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/POSIX.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/POSIX.pm", {st_mode=S_IFREG|0444, st_size=16637, ...}) = 0
    open("/usr/lib/perl5/core_perl/POSIX.pm", O_RDONLY) = 8
    ioctl(8, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b660) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(8, 0, SEEK_CUR) = 0
    read(8, "package POSIX;\nuse strict;\nuse w"..., 8192) = 8192
    stat("/usr/lib/urxvt/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/Fcntl.pm", 0x7fffb449b260) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/site_perl/Fcntl.pm", 0x7fffb449b260) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/site_perl/Fcntl.pm", 0x7fffb449b260) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/vendor_perl/Fcntl.pm", 0x7fffb449b260) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/share/perl5/vendor_perl/Fcntl.pm", 0x7fffb449b260) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Fcntl.pmc", 0x7fffb449b310) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/perl5/core_perl/Fcntl.pm", {st_mode=S_IFREG|0444, st_size=3924, ...}) = 0
    open("/usr/lib/perl5/core_perl/Fcntl.pm", O_RDONLY) = 9
    ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fffb449b020) = -1 ENOTTY (Inappropriate ioctl for device)
    lseek(9, 0, SEEK_CUR) = 0
    read(9, "package Fcntl;\n\n=head1 NAME\n\nFcn"..., 8192) = 3924
    brk(0x23df000) = 0x23df000
    read(9, "", 8192) = 0
    close(9) = 0
    getuid() = 1000
    geteuid() = 1000
    getgid() = 100
    getegid() = 100
    stat("/usr/lib/perl5/core_perl/auto/Fcntl/Fcntl.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/Fcntl/Fcntl.so", {st_mode=S_IFREG|0555, st_size=21954, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/Fcntl/Fcntl.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    open("/usr/lib/perl5/core_perl/auto/Fcntl/Fcntl.so", O_RDONLY|O_CLOEXEC) = 9
    read(9, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\33\0\0\0\0\0\0"..., 832) = 832
    fstat(9, {st_mode=S_IFREG|0555, st_size=21954, ...}) = 0
    mmap(NULL, 2113800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 9, 0) = 0x7f9adbf33000
    mprotect(0x7f9adbf36000, 2097152, PROT_NONE) = 0
    mmap(0x7f9adc136000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 9, 0x3000) = 0x7f9adc136000
    close(9) = 0
    mprotect(0x7f9adc136000, 4096, PROT_READ) = 0
    read(8, "\t\tEAGAIN EALREADY EBADF EBUSY EC"..., 8192) = 8192
    brk(0x2400000) = 0x2400000
    brk(0x2421000) = 0x2421000
    read(8, "ub DELETE { delete $SIG{ &_check"..., 8192) = 253
    read(8, "", 8192) = 0
    close(8) = 0
    stat("/usr/lib/perl5/core_perl/auto/POSIX/POSIX.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/POSIX/POSIX.so", {st_mode=S_IFREG|0555, st_size=98287, ...}) = 0
    stat("/usr/lib/perl5/core_perl/auto/POSIX/POSIX.bs", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
    open("/usr/lib/perl5/core_perl/auto/POSIX/POSIX.so", O_RDONLY|O_CLOEXEC) = 8
    read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 Z\0\0\0\0\0\0"..., 832) = 832
    fstat(8, {st_mode=S_IFREG|0555, st_size=98287, ...}) = 0
    mmap(NULL, 2180400, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 8, 0) = 0x7f9adbd1e000
    mprotect(0x7f9adbd30000, 2093056, PROT_NONE) = 0
    mmap(0x7f9adbf2f000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x11000) = 0x7f9adbf2f000
    close(8) = 0
    mprotect(0x7f9adbf2f000, 12288, PROT_READ) = 0
    brk(0x2442000) = 0x2442000
    stat("/usr/lib/urxvt/Tie/Hash.pmc", 0x7fffb449b950) = -1 ENOENT (No such file or directory)
    stat("/usr/lib/urxvt/Tie/Hash.pm", 0x7fffb449b8a0) = -1 ENOENT (N

  • How to Validate this using Regular Expressions

    Hi All,
    I have following types of Mail IDs, Each is a String.
    It may be either of the Following:
    [email protected]
    or
    Ameer<[email protected]>
    Then How to validate using the Regular Expressions.

    use this regex.. might need to convert it from perl regex flavor:
    (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
    )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:
    \r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
    ?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[
    \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0
    31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\
    ](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+
    (?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:
    (?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
    |(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)
    ?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
    r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[
    \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
    ?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t]
    )*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
    \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*
    )(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
    )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)
    *:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
    |\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r
    \n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
    \r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
    ]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031
    ]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](
    ?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?
    :(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?
    :\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
    :(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
    [ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\]
    \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
    \\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>
    @,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
    (?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t]
    )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
    ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?
    :[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
    \]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-
    \031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
    ?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;
    :\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([
    ^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\"
    .\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\
    ]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\
    [\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\
    r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\]
    \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]
    |\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \0
    00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\
    .|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,
    ;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?
    :[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*
    (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
    \[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[
    ^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]
    ]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*(
    ?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
    ".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(
    ?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[
    \["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t
    ])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t
    ])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?
    :\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|
    \Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:
    [^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\
    ]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)
    ?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["
    ()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)
    ?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>
    @,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[
    \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,
    ;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t]
    )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
    ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?
    (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
    \[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:
    \r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[
    "()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])
    *))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])
    +|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\
    .(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
    |(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(
    ?:\r\n)?[ \t])*))*)?;\s*)

  • How to search ONLY in package names, without descriptions?

    Hello!
    I would like to know how I can search with pacman only in the package names, without searching descriptions?
    For example, searching for the rar package (pacman -Ss rar) gives me tons of results with hundreds of packages, where "library" occurs in the description.
    I have already read the pacman manual page, but I couldn't find anything suitable.
    Greets, Horst

    perl -e '$search = "rar";$output=`pacman -Ss $search`;while($output=~/^(\S.*?\Q$search\E.*?\n(?:\s.*\n)*)/mgi){print $1}'
    This does the normal "pacman -Ss whatever" search, but then it checks that the search term is in the package name. Just replace "rar" in "$search = "rar" with whatever you want to search for.
    I tried to make it work with grep using -P, but I still don't know how to make it case-insensitive then ("-i" doesn't seem to work with perl regexes). Here it is anyway though:
    pacman -Ss rar | grep -P "^\S.*?rar(?:.*|\n)*?(?=\n\S)"
    Aside from being case-sensitive, you also have to replace both instances of "rar" with your search term.
    Here's a script version that you can run from the command line:
    #!/usr/bin/perl
    use strict;
    use warnings;
    my $search = "@ARGV";
    my $output = '';
    open(my $pipe,'-|',"pacman -Ss $search") or die "Unable to create pipe to pacman: $!\n";
    while (defined(my $line=<$pipe>)){$output.=$line;}
    close $pipe;
    while($output=~/^(\S.*?\Q$search\E.*?\n(?:\s.*\n)*)/mgi){print $1};
    Save it as "search_pkgnames", make it executable, then invoke it with your search term: search_pkgnames rar
    Hope this helps.

  • Mimeman: a mimetype to application file association manager

    info page: http://xyne.archlinux.ca/info/mimeman
    I got the idea for this when dealing with mimetypes for ObFilebrowser. Pcmanfm kept creating redundant desktop files so I wanted something to purge them and it just went from there. I think it's pretty robust for doing mass associations due to the ability to use perl regexes.
    The man page on the info page should explain it. If you want to see the actual changes that it makes, open up ~/.local/share/applications and take a look at the files after each operation. If anything's unclear, let me know. I'll probably add this as an optdepend to ObFilebrowser and throw in a menu to do in-menu associations along with some other stuff. *edit* Maybe I'm just tired, but I'm looking at different ways of doing that and they all feel a bit inelegant... might just stick to the command line... it's easy enough to do with the "copy mimetype" menu anyway. Meh.
    Btw, I seriously considered naming this "assman" or "assmime". It might not take too much convincing to get me to change the name.
    Last edited by Xyne (2009-08-12 20:19:58)

    Have you ever created something not useful?

  • Debug event: Keyframes

    I have encountered a bug in Premiere Elements 10.0:
    I was editing a movie project, saved it, exited Elements, then tried to reopen it and got the error message
    Premiere Elements Debug Event
    Premiere Elements has encountered an error:
    [d:\pre\mediacore\mediafoundation\api\inc\Keyframe/Keyframe.h-142]
    Looking at my history of auto-saves, I found that the three most recent auto-saves showed the same error, the fourth one could be opened OK. That version was at the state of the project I had before starting to add DVD menus to it.
    Looking further at the project files (prompted by this forum entry: http://forums.adobe.com/message/4038119 and the strange solution proposed by it: using Perl to replace certain commas with dots), I found a striking difference between the last working and the first non-working solution:
    In the file that couldn't be opened, all decimal numbers in <StartKeyframe> and <Keyframe> tags had been saved incorrectly.
    For example, a line like
    <StartKeyframe>-91445760000000000,1.,0,0,0.,0.,0.,0.</StartKeyframe>
    had become
    <StartKeyframe>-91445760000000000,1,,0,0,0,,0,,0,,0,</StartKeyframe>
    Obviously, PE was using the current locale's (Germany) settings for the decimal point (which is a comma) to save those values instead of the dot it needed to be able to reopen the file.
    So I first tried the solution in the above post, but I found that the regex provided there didn't catch all the incorrect commas. I tried it again with the regex
    s/,(?=[,<]|\d{10})/./g
    replacing every comma that was either followed by another comma or an opening angle bracket or a decimal fraction (all of which are > 10 digits) with a dot.
    This looks like it fixed this problem (at least now there were no differences in the decimals between those two versions when I compared them with Beyond Compare), but the file still refused to open (with the same error message). Of course there are still >2100 differences between the two files (there are about 20 minutes of editing between them), but after looking at about 100 of those, I didn't find anything that looked suspicious (at least nothing in the vicinity of "keyframes"). But of course I don't know if I'm looking for the right thing.
    So is there any way to check for other errors that make the file invalid? Any hints?
    Also, how come this bug is still there (it looks like it exists since PE 8)?
    Thanks and best regards,
    Tim

    Ah, drat. Posted too soon: I have "fixed it"!  On the other hand, maybe others can profit from this solution:
    What I had overlooked: There appears to be one case where a decimal number has less than 10 decimal digits, and that's when that decimal number is 0.5. (I'm worrying a bit that there might be other exceptions, but I haven't found any in my files).
    So, the following solution worked for me, allowing me to open the project successfully:
    Using a decent text editor (one that supports regular expressions with lookahead assertions, for example EditPadPro or UltraEdit (when setting it to Perl regex mode), search for
    ,(?:(?=[,<]|\d{10})|(?<=\b0,)(?=5\b))
    and replace all with a single dot (.)
    This regex searches for a comma that is either followed by another comma, an opening angle bracket, a decimal fraction of at least 10 digits, or the number 5 (but only if that comma is preceded by the single digit 0).
    This allows me to open the project again. However, as soon as I save it again, the file gets corrupted again.
    Interestingly (and possibly related), when I try to open the (repaired) file, a PE information window appears ("PE is updating a component. Information is being transmitted..." or something like that in German) and a Windows 7 UAC dialog pops up, asking me to allow the Windows Regserver to modify my system. It doesn't matter whether I allow or deny that request (which appears twice in succession, by the way), as soon as I save the file again, it's corrupted.
    The commands that are asked to be executed are:
    C:\Windows\System32\regsvr32.exe /s "C:\Program Files\Adobe\Adobe Premiere Elements 10\mc_dec_mpa_ds.ax" "C:\Program Files\Adobe\Adobe Premiere Elements 10\mc_dec_mp2v_ds.ax"
    and
    C:\Windows\SysWOW64\regsvr32.exe /s "C:\Program Files\Adobe\Adobe Premiere Elements 10\32\mc_dec_mpa_ds.ax" "C:\Program Files\Adobe\Adobe Premiere Elements 10\32\mc_dec_mp2v_ds.ax"
    But at least I can now re-open that file after "fixing" it.
    Still it would be nice if Adobe could fix this problem. Is this the right place where Adobe technicians will read it and act on it, or do I have to do something else?
    Some system information: Windows 7 Pro 64bit with all current patches, 64-version of PE 10.0 installed.
    Cheers,
    Tim

  • Regular expression wierdness

    Can somebody please help me make sense of the following behavior? Consider the following code:
    import java.util.regex.*;
    public class Foo {
        public static void main(String args[]) {
            String str = "This is a test";
            String pat = "i";
            System.out.println("- "+str.matches(pat));
            System.out.println("= "+str.replaceAll("i", "(FOO)"));
    }And the following output:
    - false
    = Th(FOO)s (FOO)s a testIt seems to me that in order for String.replaceAll(String) to actually replace anything (as it clearly did in the second line of output) it must match something, which clearly refutes the first line of output. I'm running:
    java version "1.4.1_01"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_01-39)
    Java HotSpot(TM) Client VM (build 1.4.1_01-14, mixed mode)
    On an iBook running Mac OS X 10.2 kernel version 6.6.
    Thoroughly confused,
    -mike

    Yeah, there's nothing wrong with the output. matches()
    doesn't check whether it contains that pattern, it
    checks it on the entire string. If you want to know if
    there's an "i" with regex, you can use
    this:str.matches(".*i.*")
    Thanks, I was relying too heavily on my Perl regex knowledge!

  • Java and DDE/COM

    I'm using some PERL/regex software for a telnet client which only supports COM and DDE usage for communicating to other applications.
    I've invested an entire day searching for a solution other than spending upwards of a thousand dollars for professional DDE software, and I've found nothing. I am still hoping that someone could advise me of where to look for information regarding creating COM objects in Java, or setting up a DDE connection between them. Something integrated like InfoBus would be nice, but it is obviously not supported by my telnet client.

    http://danadler.com/jacob/
    I don't know about the DDE bit though. I haven't used DDE in years and it was very unpleasant when I did. (I didn't do anything with Java with it)
    I am sure it can be done... it just may be tricky.

  • Porting regex from Perl

    I'm trying to port some Perl5 code to Java 5.0. I have some issues with the following regex (^|>):
    Perl:
    $_ = ">";
    s/(^|>)/$1m/g'
    print "$_\n";
    Java:
    String s = ">";
    Pattern p = Pattern.compile( "(^|>)" );
    Matcher m = p.matcher( s );
    System.out.println (m.replaceAll( "$1m" ));
    Perl gives me "m>m" while Java (and some other regex implementations I've tried vim, javascript) gives me "m>". It seems that Perl's implementation is correct. It finds the beginning of a line and then it finds more sign. Two matches.
    Any ideas how would I make Java regex behave identical to Perl here?
    thanks
    i5mast

    i5mast wrote:
    String s = ">xxx>xxx>";
    Pattern p = Pattern.compile( "(?<=^|>)" );
    Matcher m = p.matcher( s );
    System.out.println (m.replaceAll( "m" ));m>xxx>mxxx>m
    Not exactly like m>mxxx>mxxx>m.!!!!!!!! I get
    m>mxxx>mxxx>mon 1.6.0_23 and on the beta versions of 1.7 .
    Edited by: sabre150 on 25-Feb-2011 14:45
    On 1.5 I get
    m>xxx>mxxx>mso you must be using 1.5. I can get the desired result for 1.5,1.6 and 1.7 using
           String s = ">xxx>xxx>";
            Pattern p = Pattern.compile("(?<=>)|(?<=^)");
            Matcher m = p.matcher(s);
            System.out.println(m.replaceAll("m"));

  • Trying to get lighttpd to upload a file through perl cgi

    Hi, I'm quite new in these things, so I might be doing something obvious wrong, but I'd like some help on this.
    I'm trying to make a webpage where people can upload files, this is the html page (located at /srv/html/index.html):
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>lighttpd Test Page</title>
    </head>
    <body>
    <div style="text-align:center; font: 12px sans-serif;">
    <span style="font-weight: bold; font-size: 20px;">
    Arch Linux
    </span>
    <br><br>
    This is a test page for the lighttpd Web Server.<br>
    <form action="/cgi-bin/upload.pl" method="post" enctype="multipart/form-data">
    <input type="file" name="fileName" size="40">
    <input type="submit" value="Send">
    <input type="reset">
    </form>
    </div>
    </body>
    </html>
    And the backend (in /srv/html/cgi-bin/upload.pl):
    #!/usr/bin/perl -wT
    use strict;
    use CGI;
    use CGI::Carp qw ( fatalsToBrowser );
    use File::Basename;
    $CGI::POST_MAX = 1024 * 1024 * 5000; # 5GB filesize limit
    my $safe_filename_characters = "a-zA-Z0-9_.-";
    my $upload_dir = "/srv/jail/";
    my $query = new CGI;
    my $filename = $query->param("fileName");
    if ( !$filename )
    print $query->header ( );
    print "There was a problem uploading your file (filesize limit may be exceeded).";
    exit;
    my ( $name, $path, $extension ) = fileparse ( $filename, '\..*' );
    $filename = $name . $extension;
    $filename =~ tr/ /_/;
    $filename =~ s/[^$safe_filename_characters]//g;
    if ( $filename =~ /^([$safe_filename_characters]+)$/ )
    $filename = $1;
    else
    die "Filename contains invalid characters";
    my $upload_filehandle = $query->upload("fileName");
    open ( UPLOADFILE, ">$upload_dir/$filename" ) or die "$!";
    binmode UPLOADFILE;
    while ( <$upload_filehandle> )
    print UPLOADFILE;
    close UPLOADFILE;
    print $query->header ( );
    print <<END_HTML;
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Done!</title>
    </head>
    <body>
    <p>Uploading done!</p>
    </body>
    </html>
    END_HTML
    My server config:
    # lighttpd configuration file
    # use it as a base for lighttpd 1.0.0 and above
    # $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $
    ############ Options you really have to take care of ####################
    ## modules to load
    # at least mod_access and mod_accesslog should be loaded
    # all other module should only be loaded if really neccesary
    # - saves some time
    # - saves memory
    server.modules = (
    # "mod_rewrite",
    # "mod_redirect",
    # "mod_alias",
    "mod_access",
    # "mod_cml",
    # "mod_trigger_b4_dl",
    # "mod_auth",
    # "mod_status",
    # "mod_setenv",
    # "mod_fastcgi",
    # "mod_proxy",
    # "mod_simple_vhost",
    # "mod_evhost",
    # "mod_userdir",
    "mod_cgi",
    # "mod_compress",
    # "mod_ssi",
    # "mod_usertrack",
    # "mod_expire",
    # "mod_secdownload",
    # "mod_rrdtool",
    "mod_accesslog" )
    ## a static document-root, for virtual-hosting take look at the
    ## server.virtual-* options
    server.document-root = "/srv/http/"
    ## where to send error-messages to
    server.errorlog = "/var/log/lighttpd/error.log"
    # files to check for if .../ is requested
    index-file.names = ( "index.php", "index.html",
    "index.htm", "default.htm" )
    ## set the event-handler (read the performance section in the manual)
    # server.event-handler = "freebsd-kqueue" # needed on OS X
    # mimetype mapping
    mimetype.assign = (
    ".pdf" => "application/pdf",
    ".sig" => "application/pgp-signature",
    ".spl" => "application/futuresplash",
    ".class" => "application/octet-stream",
    ".ps" => "application/postscript",
    ".torrent" => "application/x-bittorrent",
    ".dvi" => "application/x-dvi",
    ".gz" => "application/x-gzip",
    ".pac" => "application/x-ns-proxy-autoconfig",
    ".swf" => "application/x-shockwave-flash",
    ".tar.gz" => "application/x-tgz",
    ".tgz" => "application/x-tgz",
    ".tar" => "application/x-tar",
    ".zip" => "application/zip",
    ".mp3" => "audio/mpeg",
    ".m3u" => "audio/x-mpegurl",
    ".wma" => "audio/x-ms-wma",
    ".wax" => "audio/x-ms-wax",
    ".ogg" => "application/ogg",
    ".wav" => "audio/x-wav",
    ".gif" => "image/gif",
    ".jar" => "application/x-java-archive",
    ".jpg" => "image/jpeg",
    ".jpeg" => "image/jpeg",
    ".png" => "image/png",
    ".xbm" => "image/x-xbitmap",
    ".xpm" => "image/x-xpixmap",
    ".xwd" => "image/x-xwindowdump",
    ".css" => "text/css",
    ".html" => "text/html",
    ".htm" => "text/html",
    ".js" => "text/javascript",
    ".asc" => "text/plain",
    ".c" => "text/plain",
    ".cpp" => "text/plain",
    ".log" => "text/plain",
    ".conf" => "text/plain",
    ".text" => "text/plain",
    ".txt" => "text/plain",
    ".dtd" => "text/xml",
    ".xml" => "text/xml",
    ".mpeg" => "video/mpeg",
    ".mpg" => "video/mpeg",
    ".mov" => "video/quicktime",
    ".qt" => "video/quicktime",
    ".avi" => "video/x-msvideo",
    ".asf" => "video/x-ms-asf",
    ".asx" => "video/x-ms-asf",
    ".wmv" => "video/x-ms-wmv",
    ".bz2" => "application/x-bzip",
    ".tbz" => "application/x-bzip-compressed-tar",
    ".tar.bz2" => "application/x-bzip-compressed-tar",
    # default mime type
    "" => "application/octet-stream",
    # Use the "Content-Type" extended attribute to obtain mime type if possible
    #mimetype.use-xattr = "enable"
    ## send a different Server: header
    ## be nice and keep it at lighttpd
    # server.tag = "lighttpd"
    #### accesslog module
    accesslog.filename = "/var/log/lighttpd/access.log"
    ## deny access the file-extensions
    # ~ is for backupfiles from vi, emacs, joe, ...
    # .inc is often used for code includes which should in general not be part
    # of the document-root
    url.access-deny = ( "~", ".inc" )
    $HTTP["url"] =~ "\.pdf$" {
    server.range-requests = "disable"
    # which extensions should not be handle via static-file transfer
    # .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
    static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
    ######### Options that are good to be but not neccesary to be changed #######
    ## bind to port (default: 80)
    server.port = ###
    ## bind to localhost (default: all interfaces)
    #server.bind = "127.0.0.1"
    ## error-handler for status 404
    #server.error-handler-404 = "/error-handler.html"
    #server.error-handler-404 = "/error-handler.php"
    ## to help the rc.scripts
    server.pid-file = "/var/run/lighttpd/lighttpd.pid"
    ###### virtual hosts
    ## If you want name-based virtual hosting add the next three settings and load
    ## mod_simple_vhost
    ## document-root =
    ## virtual-server-root + virtual-server-default-host + virtual-server-docroot
    ## or
    ## virtual-server-root + http-host + virtual-server-docroot
    #simple-vhost.server-root = "/srv/http/vhosts/"
    #simple-vhost.default-host = "www.example.org"
    #simple-vhost.document-root = "/htdocs/"
    ## Format: <errorfile-prefix><status-code>.html
    ## -> ..../status-404.html for 'File not found'
    #server.errorfile-prefix = "/usr/share/lighttpd/errors/status-"
    #server.errorfile-prefix = "/srv/http/errors/status-"
    ## virtual directory listings
    #dir-listing.activate = "enable"
    ## enable debugging
    #debug.log-request-header = "enable"
    #debug.log-response-header = "enable"
    #debug.log-request-handling = "enable"
    #debug.log-file-not-found = "enable"
    ### only root can use these options
    # chroot() to directory (default: no chroot() )
    #server.chroot = "/"
    ## change uid to <uid> (default: don't care)
    server.username = "http"
    ## change uid to <uid> (default: don't care)
    server.groupname = "http"
    #### compress module
    #compress.cache-dir = "/var/cache/lighttpd/compress/"
    #compress.filetype = ("text/plain", "text/html")
    #### proxy module
    ## read proxy.txt for more info
    #proxy.server = ( ".php" =>
    # ( "localhost" =>
    # "host" => "192.168.0.101",
    # "port" => 80
    #### fastcgi module
    ## read fastcgi.txt for more info
    ## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini
    #fastcgi.server = ( ".php" =>
    # ( "localhost" =>
    # "socket" => "/var/run/lighttpd/php-fastcgi.socket",
    # "bin-path" => "/usr/bin/php-cgi"
    #### CGI module
    cgi.assign = ( ".pl" => "/usr/bin/perl",
    ".cgi" => "/usr/bin/perl" )
    #### SSL engine
    #$SERVER["socket"] == "0.0.0.0:443" {
    ssl.engine = "enable"
    ssl.pemfile = "/etc/ssl/private/lighttpd.pem"
    # server.errorlog = "/var/log/lighttpd/error-ssl.log"
    # accesslog.filename = "/var/log/lighttpd/access-ssl.log"
    # server.document-root = "/home/lighttpd/html-ssl"
    #### status module
    #status.status-url = "/server-status"
    #status.config-url = "/server-config"
    #### auth module
    ## read authentication.txt for more info
    #auth.backend = "plain"
    #auth.backend.plain.userfile = "lighttpd.user"
    #auth.backend.plain.groupfile = "lighttpd.group"
    #auth.backend.ldap.hostname = "localhost"
    #auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
    #auth.backend.ldap.filter = "(uid=$)"
    #auth.require = ( "/server-status" =>
    # "method" => "digest",
    # "realm" => "download archiv",
    # "require" => "user=jan"
    # "/server-config" =>
    # "method" => "digest",
    # "realm" => "download archiv",
    # "require" => "valid-user"
    #### url handling modules (rewrite, redirect, access)
    #url.rewrite = ( "^/$" => "/server-status" )
    #url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
    #### both rewrite/redirect support back reference to regex conditional using %n
    #$HTTP["host"] =~ "^www\.(.*)" {
    # url.redirect = ( "^/(.*)" => "http://%1/$1" )
    # define a pattern for the host url finding
    # %% => % sign
    # %0 => domain name + tld
    # %1 => tld
    # %2 => domain name without tld
    # %3 => subdomain 1 name
    # %4 => subdomain 2 name
    #evhost.path-pattern = "/srv/http/vhosts/%3/htdocs/"
    #### expire module
    #expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")
    #### ssi
    #ssi.extension = ( ".shtml" )
    #### rrdtool
    #rrdtool.binary = "/usr/bin/rrdtool"
    #rrdtool.db-name = "/var/lib/lighttpd/lighttpd.rrd"
    #### setenv
    #setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
    #setenv.add-response-header = ( "X-Secret-Message" => "42" )
    ## for mod_trigger_b4_dl
    # trigger-before-download.gdbm-filename = "/var/lib/lighttpd/trigger.db"
    # trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
    # trigger-before-download.trigger-url = "^/trigger/"
    # trigger-before-download.download-url = "^/download/"
    # trigger-before-download.deny-url = "http://127.0.0.1/index.html"
    # trigger-before-download.trigger-timeout = 10
    ## for mod_cml
    ## don't forget to add index.cml to server.indexfiles
    # cml.extension = ".cml"
    # cml.memcache-hosts = ( "127.0.0.1:11211" )
    #### variable usage:
    ## variable name without "." is auto prefixed by "var." and becomes "var.bar"
    #bar = 1
    #var.mystring = "foo"
    ## integer add
    #bar += 1
    ## string concat, with integer cast as string, result: "www.foo1.com"
    #server.name = "www." + mystring + var.bar + ".com"
    ## array merge
    #index-file.names = (foo + ".php") + index-file.names
    #index-file.names += (foo + ".php")
    #### include
    #include /etc/lighttpd/lighttpd-inc.conf
    ## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
    #include "lighttpd-inc.conf"
    #### include_shell
    #include_shell "echo var.a=1"
    ## the above is same as:
    #var.a=1
    The site is running over https with a self signed ssl-cert, if that matters. If I try to upload a file, the browser just quickly reloades the page, the filename still in the input field. The file isn't uploaded and the page that the script should display when completed doesn't show neither.
    Does anyone know how to troubleshoot this? I'm not getting any errors, it just doesn't work..

    I haven't used Websphere before so I can't say much about that. Try putting <%@ page language="Java" %> at the top of your jsp page.
    Try putting your java files into a package and see if that helps. I read somewhere that Tomcat once had issues with running classes that weren't in a package. Make sure to put the package statement at the top of your Java files if you do.
    Websphere says it caught an unhandled exception. Instead of having your method throw and Exception put your code in a try-catch block and then print a stack trace to see if it says anything when it trys to read and write data.
    Try{
        PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("doUpload.txt")));
        ServletInputStream in = request.getInputStream();
        int a=0;
        a=in.read();
        while (a!= -1){
            pw.print((char) a);
            a=in.read();
        pw.close();
    }catch(Exception e){
      e.printStackTrace();
    }Sorry I can't really give you more help.
    -S-

  • How to replace regex match into a char value (in the middle of a string)

    Hi uncle_alice and other great regex gurus
    One of my friends has a peculiar problem and I cant give him a solution.
    Using String#replaceAll(), i.e. NOT a Matcher loop, how could we convert matched digit string such as "65" into a char of its numeric value. That is, "65" should be converted into letter 'A'.
    Here's the failing code:
    public class GetChar{
      public static void main(String[] args){
        String orig = "this is an LF<#10#> and this is an 'A'<#65#>";
        String regx = "(<#)(\\d+)#>";
        //expected result : "this is an LF\n and this is an 'A'A"
        String result = orig.replaceAll(regx, "\\u00$2");
        // String result = orig.replaceAll(regx, "\\\\u00$2"); //this also doesn't work
        System.out.println(result);

    I don't know that we have lost anything substantial.i think its just that the kind of task this is
    especially useful for is kind of a blind-spot in the
    range of things java is a good-fit for (?)
    for certain tasks (eg process output munging) an
    experienced perl programmer could knock up (in perl)
    using built-in language features a couple of lines
    which in java could takes pages to do. If the cost is
    readability/maintainability/expandability etc.. then
    this might be a problem, but for a number of
    day-to-day tasks it isn't
    i'm trying to learn perl at the moment for this exact
    reason :)Yes. And when a Java source-code processor(a.k.a. compiler) sees the code like:
    line = line.replaceAll(regexp,  new String(new char[] {(char)(Integer.parseInt("$1"))}));or,
    line = line.replaceAll(regexp,  doMyProcessOn("$1")); //doMyProcess returns a Stringa common sense should have told him that "$1" isn't a literal string "$1" in this regular expression context.
    By the way, I abhor Perl code becaus of its incomprehensibleness. They can't be read by an average common sense. Java code can be, sort of ...

  • Using a local variable in regex portion of replaceAll(regex, replacement)

    While this works..
    output = output.replaceAll("(HED>|AUT>)(.*)(</\\1)", "$1<![CDATA[$2]]>$3");
    I'd like the list of alternation values to be contained in a variable, for example:
    String nodeLIst = "HED>|AUT>";
    output = output.replaceAll("(nodeList)(.*)(</\\1)", "$1<![CDATA[$2]]>$3");
    The extension of this would be so I can store this stuff in a db as a list and avoid compilation on change, but please don't let this muddy the waters... :)
    Any pointers are much appreciated. Links to specific reading material, etc. I've scoured Friedl's Mastering Regular Expressions to no avail. This approach is supported by some other regex engines I've used (perl, php, ORO?) but I'm new to Java.
    TIA,
    Mark

    I've scoured Friedl's Mastering Regular Expressions to no avail.Did you look on page 209? In the book, that code sample is labelled "Building Up a Regex Through Variables in Java". That should have been a clue. ^_^
    But seriously, you're probably thinking of the interpolated strings you find in scripting languages like Perl, PHP, Ruby, etc.. But that's a feature of the language itself, not the regex engine, and Java doesn't work that way. (The $1, $2, etc., in the replacement string are processed by the Matcher class, in a very limited imitation of Perl's variable interpolation).
    However, you can fake it pretty well with String's format() method:   String regex = String.format("(%s)(.*)(</\\1)", theAlternation);
      output = output.replaceAll(regex, "$1<![CDATA[$2]]>$3"); That way, you can easily escape the dynamic part, in case it might contain regex metacharacters:   String regex = String.format("(%s)(.*)(</\\1)", Pattern.quote(theAlternation));

  • How to use sed on a literal string containing regex meta characters?

    I want to delete the lines from a file which match an arbitrary literal string.
    The string is contained in a variable, and may itself contain various regex meta characters such as [,],^,$,|, etc
    So, my problem is that sed wants to interpret these meta characters itself. For example:
    x='abc[xyz$'
    sed -i "/$x/d" file
    produces a sed error about the unmatched [, and no doubt it wants to interpret the $ too.
    (Of course, I could try and change the string $x so that every possible regex meta character was escaped with a \, but that seems immensely cumbersome. Also, can't see a way of using single or double quotes cleverly.)
    Sorry if I am being thick about this, but any ideas or alternative methods would be most welcome!

    frostschutz wrote:
    With sed, you have to escape meta characters indivudually. That's just how it works. Of course you could do the escaping using sed as well, by replacing all meta characters (including \ and /) with \character.
    If you want to match strings literally, use a different tool. Or do it in Bash.
    while read line
    do
    [ "$line" != "$x" ] && echo "$line"
    done < file
    In Perl/PCRE instead of escaping indivudually there is \Q...\E but sed does not understand that, and \Q\E does not solve all problems either, if there is a \E in the $x you have to escape it with \E\\E\Q or something like it.
    Thank you for your swift reply. Looks like sed can't be much of a friend in these circumstances!
    Probably will have to go with the Bash file handling method.
    Oh well ...

Maybe you are looking for

  • My macbook is running really slow with most apps crashing

    Hello everyone, so recently my MacBook pro (mid 2012) is running incredibly slow, it's been a couple of weeks now and I don't really know what's going on, since it's always been pretty fast I've never had much issues until now. Thank you very much!!

  • What cable do i need for a dual monitor iMac late 2013

    Hi there I am wondering if I can set up a dual monitor for my imac late 2013. I'm quite new to macs so bear with me. I'm a university student studying maya (digital vfx animation) and I need desperately to hve a dual set up. My mac is the 21.5inches.

  • Some critical errors in Planning, Business Rules and FR

    Dear All, I am facing some critical errors in Hyperion Plannign 11.1.1.3. We did the migration of BR rules from one server to another server. Migration went well. When i running any one of the rule, it throws the below errors: If i run any one of the

  • Report Top 10 and OTHERS

    Hi, I would like to report the TOP 3 and othres as table and chart on the web report. I am very glad if you advice how to do. Transaction customer1 5000 customer2 6000 customer3 3000 customer4 2000 Customer5 8000 the requirement customer5 8000 custom

  • Procurement related

    Hi Experts I have a typical requirement. My client procures material from dealers also. For an imported material Other then the normal excise duty , the Additional Duty of customs is also being charged by the dealer. How do we map this in Taxinn proc