7.0 Awesome, but...

I love the new iPhoto, I love evens, I love the web gallery, I love it all; however, there are just a few little things that could make it so much better
I think we should start a discussion here of what realistic things we'd like to see be a part of the iPhoto.
My thoughts:
You should be able to build hierarchies into events and albums. i suppose the easiest way to think of this would be to have sub-events within events, and have events within albums. This way you can set up main categories for your events. You could view all events at once, turn on or off certain events, or simply view one category of events.
For albums, it would be nice if you could build subgroups as well. As a photographer I have a portfolio album; however, I would like to subdivide the portfolio by the various models I have worked with, or by different themes. Then i could go into each subgroup and hide/unhide the photos i want to represent this subgroup within the main group.
now perhaps these features already exist, and I just have not found out how to use them. That would be cool. Yet if they don't, I think these features are a no-brainer, and I can't imagine it being the hardest thing to program.
let's hear what everyone else's thoughts are.

Think of events as a cronological file of all of your photos. You now can build the structures you want by using albums and folders adding "virtual" photos to the albums and organizing them into folders.
THis way you have only one (or two if you modify the photo) physical copies of the photo and can put virtual copies anywhere and as many places as you want
So you could have a folder for portraits with one album in it for each model AND one album for blonds, one for redheads AND one for Asains and one for Latinos -- as much sub organization as you want and are willing to take time to build -- all vitrual pointin gback to the same phyusical photo.
Then you can add Keywords to give you yet another way to find subsets of your photos.
Play with it - I think what you want is there in albums and folders -- just remember that events are always the physical storage place for your photos and what you do to the photos in the event will affect ALL virtual copies of it in all albums in all folders
Larry Nebel
Message was edited by: LarryHN

Similar Messages

  • Safari Hangs after deleting :Awesome" but works for few when restrating

    Safari Hangs after deleting"Awesome" but works for few minutes once shutdown and restart

    I tried to look at other similar problems and tried to play around with it.
    What I noticed was that I deleted the application but did not uninstall the extension.
    Now I have now uninstalled the extension and Safari is back to normal.
    Thanks Andy for your response

  • HT3406 my iphone 5...was working awesome but after erasing i powred it on.....later it required a sim card....i installed a srilankan service provider (DIALOG) sim......it dosn't work.......

    my iphone 5...was working awesome but after erasing i powered it on.....later it required a sim card....i installed a srilankan service provider (DIALOG) sim......it dosn't work.......please help me how can a recover my iphone back......

    It sounds as though your phone had been hacked to remove the network lock.
    When you restored the phone it relocked itself to the original network and it will now only work if a sim from the original network is used.

  • New-Asset Report - awesome, but can't get it to run?

    Howdy - I am trying to run the awesome new-asset report that Zachary Loeber shared with the technet community.
    The script is here:  http://gallery.technet.microsoft.com/Excel-and-HTML-Asset-0ffbf569
    However I can't get it to run against 1 server or multiple servers.
    I followed this information someone else asked and I get back many errors, all related to the parameters.
    Can someone help me out with this?
    A. Should this be saved as a function? And then I've read conflicting or maybe different ways to run a function.  Should I do import-module or just run the script as a single command line, and I've had this issue with other functions.  Should they
    be put in a specific location on my system?  I'm newbie, so thanks for the help!
    B.  When I run this, I've tried using this simple command:  .\New-AssetReport.ps1 -Computers testserver1.domain.local -PromptForCredentials -Verbose
    C.  Then I tried this example as well from a single line or creating another ps1 script, fails either way.
    D.  What variables are required to be filled in, and what parameters are available such as report type, include memory, but not disk, etc?
    Here's the error if I enter the command like this:  .\New-AssetReport.ps1 -Computers testserver1 -PromptForCredentials -Verbose
    New-AssetReport : Cannot process argument transformation on parameter 'SaveDataFile'. Cannot convert value
    "System.String" to type "System.Management.Automation.SwitchParameter". Boolean parameters accept only Boolean values
    and numbers, such as $True, $False, 1 or 0.
    Here is the error if I use the other example which is below.  I get many errors, all tied to the parameters such as -verbose, etc.
    $Servers = @('Server1','Server2')
            .\New-AssetReport.ps1 -Computers $Servers -PromptForCredentials -Verbose
    New-AssetReport : The term 'New-AssetReport' is not recognized as the name of a cmdlet, function, script file, or
    operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
    again.
    -ReportContainer : The term '-ReportContainer' is not recognized as the name of a cmdlet, function, script file, or
    operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
    again.

    Hi,
    Please ask the author your question on the Q&A tab for that gallery entry.
    Bill

  • [Solved] WM similair to Awesome but without need to learn a PL.

    Hello all.
    I search for a WM similar to Awesome 3.4 but without needing to learn a programming language to configure it.
    I think Ratpoison is nice  ,but I can all that I can do with awesome-bar with it pop-up bar?
    Is there something like that.
    Thanks for that.
    Last edited by SpeedVin (2010-03-07 21:25:39)

    Dieter@be wrote:any WM as configurable as awesome is, needs some kind of scripting/programming lanuage to configure it. period.
    if you want a WM that reads is config from static files (xml, ini-style, etc) you must realize:
    1) it's in no way as flexible as something that uses a scripting/programming language.
    2) it's not like awesome.
    I know about that but by this I mean default built-in bar used by awesome and how it's configurable.
    I know that  using a PL in config file makes WM more configurable but you know I someone don't understand the syntax of PL in config file I not this.
    keenerd wrote:
    ScrotWM is similar to AwesomeWM.  It is simple to configure, but it also does not have nearly as many features.  Personally, I never used those features anyway (like line graphs or spiral layouts).
    Here is a bit of the config file:
    # set the menu key
    bind[menu] = MOD+p
    # set a binding to launch a terminal
    program[term] = xterm
    bind[term] = MOD+Shift+Return
    Does not get much simpler than that.
    Wow ScrotWM is nice I think it will be really easy to configure it , thanks.

  • Tint Task Manager is awesome, but...

    There are two little things about it that I don't like.
    1) There is no window grouping. I don't know if this is planned for later or if they purposely don't like this feature, but I would like it. Sometimes for work I generate over 200 images and then save them as various formats using a script I run over-night. It sucks to see my taskbar full of 200 windows and have to close each one seperately.
    2) When I make a window show on all desktops, it disappears from Tint, and even after I "unstick" it, Tint doesn't show it.
    I don't know what the point of this is, except a mini-rant.
    Do you think these are acceptable concerns that I should email the project about? I'm pretty sure the second one wasn't intended by the developers.
    Otherwise, I love Tint. It looks way cooler than any other taskbar and is super-customizable.

    andrek wrote:I've got a question. I'm using xfce and compiz-fusion with 4 workspaces. Tint shows all the apps from all the workspaces, is it possible to get tint to show only that applications which are on current workspace?
    yes you have to set the panel_mode to single_desktop

  • Ios 6.1.3 is awesome but why it is slow man ?

    moji

    Try:
    - Reset the iOS device. Nothing will be lost
    Reset iOS device: Hold down the On/Off button and the Home button at the same time for at
    least ten seconds, until the Apple logo appears.
    - Reset all settings      
    Go to Settings > General > Reset and tap Reset All Settings.
    All your preferences and settings are reset. Information (such as contacts and calendars) and media (such as songs and videos) aren’t affected.
    - Restore from backup. See:                                 
    iOS: How to back up           
    - Restore to factory settings/new iOS device.

  • Firefox 4 is awesome, but the main backbone addon of the same i.e.IDM cc... that is not working with it...thats the main drawback for user like me which makes us to immediately shift to the older version of firefox, and stop using the new version 4...

    Try to include the IDM cc version which works with firefox 4 tooo, like the all other older versions...

    You might try using the add-on 'NoSquint' which allows numerous zoom options specific to each page you visit & keeps your settings - https://addons.mozilla.org/en-US/firefox/addon/nosquint/
    If you want to go back to 3.6x, you will find it here:
    http://www.mozilla.com/en-US/firefox/all-older.html
    In most cases you can simply "upgrade" (meaning downgrade) directly from the installation. It would be a good idea to save your passwords & bookmarks just to be on the safe side.

  • Upright features awesome but a few problems

    I've been playing around with this feature a lot since it seem to have the potential for saving me a bunch of time.
    It was a bit tricky to figure out how to turn on the upright mode for a large batch of photos without syncing the actual adjustments... and once you've made that mistake pretty much impossible to fix without resetting all development settings and then just syncing the upright mode. (no bug, just the process of learning a new tool)
    The biggest problem with this feature for me is that the changes are not visible in the crop and straighten module.  For example, lens correction straightens a photo and in the process crops it in. I then go to crop and straighten module to make an adjustment and all I have to work with is the cropped in photo (you can't see the full original). So, basically if the Auto straighten is off by just a little bit you have to go turn it off and then manually crop and straighten rather then just being able to tweak the auto adjustment.
    Also, using this tool doesn't work well with using the "previous" button to copy over development settings. It would be extremely helpful to be able to choose which settings were copied with "previous".
    It seems to be amazingly accurate and potentially huge time saver for photographers. I really hope that others learn to use the tool so we can push for some small improvements.

    Did you watch this: http://tv.adobe.com/watch/whats-new-in-lightroom-5/lightroom-5-correcting-perspective-usin g-upright/
    It may give you some answers.

  • I have windows vista, ff5 is awesome but I cant play games on facebook but I was able to with IE...please advise..i checked everything i can think of

    I checked everything...it comes up with "This text is replaced by the Flash movie."

    My mac was okay up until a few hours ago. If anyone knows how to fix this, would really appreciate your help. Thank you!

  • IPad Air is Awesome - But how will i afford it ? Need an exchange offer for iPad with Retina Display to iPad Air in India

    I have a iPad with retina display with me. We require an exchange offer for the new iPad Air in india.

    Sell your iPad retina and use that money to offset the cost of a new iPad air.
    And if your iPad retina works fine for your uses now, why not just wait - odds are there will be an iPad Air II or something new within a year or less anyway - any consumer electronic device gets replaced with a newer model in very short order anyway.  If you try to always have the very latest and greatest, you'll go broke (or nuts, or both).

  • HT1688 I downloaded Camera Awesome on my computer but I need it on my Iphone I am dumb when it comes to aps

    I am kind of stupid when it comes to aps.  I downloaded Camera Awesome to use for downloading pics onto my computer because ACDSee doesn't seem compatible.  When I plug my IPhone into my computer either nothing happens, or I get the ACDSee screen that says there's a problem and needs to close.  I just need a compatilbe program to use for downloading pics onto the computer and working with them. It said I downloaded Camera Awesome but I can't find it  What exactly IS this program?
    Why can't I get my computer to recognize my IPhone?

    never mind, I finally got it to download on my IPhone, it doesn't do what I thought but it's cool.

  • [SOLVED] Error when starting awesome WM.

    I'm not sure if this should go here or in Workstation User, so sorry if I got it wrong. When I try to startx with "exec awesome &" in my .xinitrc I get an "expected keysym, got XF86Info: line 914 of inet" error. Someone suggested that it could be my keybindings in my rc.lua for awesome but I tried someone else's rc.lua and still got it.
    Error Log
    xauth: creating new authority file /home/tim/.serverauth.27451
    X.Org X Server 1.5.0
    Release Date:
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 2.6.26-ARCH i686
    Current Operating System: Linux tim-laptop 2.6.26-ARCH #1 SMP PREEMPT Tue Sep 9 10:15:21 UTC 2008 i686
    Build Date: 06 September 2008 05:03:06PM
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Module Loader present
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Sat Sep 20 11:49:21 2008
    (==) Using config file: "/etc/X11/xorg.conf"
    expected keysym, got XF86Info: line 914 of inet
    expected keysym, got XF86Info: line 914 of inet
    expected keysym, got XF86Info: line 914 of inet
    waiting for X server to shut down .
    Xorg.log
    X.Org X Server 1.5.0
    Release Date:
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 2.6.26-ARCH i686
    Current Operating System: Linux tim-laptop 2.6.26-ARCH #1 SMP PREEMPT Tue Sep 9 10:15:21 UTC 2008 i686
    Build Date: 06 September 2008 05:03:06PM
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Module Loader present
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Sat Sep 20 11:49:21 2008
    (==) Using config file: "/etc/X11/xorg.conf"
    (==) ServerLayout "X.org Configured"
    (**) |-->Screen "Screen0" (0)
    (**) | |-->Monitor "Monitor0"
    (**) | |-->Device "Card0"
    (**) |-->Input Device "Mouse0"
    (**) |-->Input Device "Keyboard0"
    (==) Automatically adding devices
    (==) Automatically enabling devices
    (==) Including the default font path /usr/share/fonts/misc,/usr/share/fonts/100dpi:unscaled,/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/TTF,/usr/share/fonts/Type1.
    (**) FontPath set to:
    /usr/share/fonts/misc,
    /usr/share/fonts/100dpi:unscaled,
    /usr/share/fonts/75dpi:unscaled,
    /usr/share/fonts/TTF,
    /usr/share/fonts/Type1,
    /usr/share/fonts/misc,
    /usr/share/fonts/100dpi:unscaled,
    /usr/share/fonts/75dpi:unscaled,
    /usr/share/fonts/TTF,
    /usr/share/fonts/Type1
    (**) ModulePath set to "/usr/lib/xorg/modules"
    (II) Open ACPI successful (/var/run/acpid.socket)
    (II) Loader magic: 0x81d5660
    (II) Module ABI versions:
    X.Org ANSI C Emulation: 0.4
    X.Org Video Driver: 4.1
    X.Org XInput driver : 2.1
    X.Org Server Extension : 1.1
    X.Org Font Renderer : 0.6
    (II) Loader running on linux
    (--) using VT number 7
    (--) PCI:*(0@0:2:0) Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xd0300000/0, 0xc0000000/0, 0xd0400000/0, I/O @ 0x00001800/0
    (--) PCI: (0@0:2:1) Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xd0380000/0
    (II) System resource ranges:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [5] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    (II) "extmod" will be loaded. This was enabled by default and also specified in the config file.
    (II) "dbe" will be loaded. This was enabled by default and also specified in the config file.
    (II) "glx" will be loaded. This was enabled by default and also specified in the config file.
    (II) "freetype" will be loaded. This was enabled by default and also specified in the config file.
    (II) "dri" will be loaded. This was enabled by default and also specified in the config file.
    (II) LoadModule: "dri"
    (II) Loading /usr/lib/xorg/modules/extensions//libdri.so
    (II) Module dri: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension XFree86-DRI
    (II) LoadModule: "glx"
    (II) Loading /usr/lib/xorg/modules/extensions//libglx.so
    (II) Module glx: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    ABI class: X.Org Server Extension, version 1.1
    (==) AIGLX enabled
    (==) Exporting typical set of GLX visuals
    (II) Loading extension GLX
    (II) LoadModule: "dbe"
    (II) Loading /usr/lib/xorg/modules/extensions//libdbe.so
    (II) Module dbe: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension DOUBLE-BUFFER
    (II) LoadModule: "extmod"
    (II) Loading /usr/lib/xorg/modules/extensions//libextmod.so
    (II) Module extmod: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension SHAPE
    (II) Loading extension MIT-SUNDRY-NONSTANDARD
    (II) Loading extension BIG-REQUESTS
    (II) Loading extension SYNC
    (II) Loading extension MIT-SCREEN-SAVER
    (II) Loading extension XC-MISC
    (II) Loading extension XFree86-VidModeExtension
    (II) Loading extension XFree86-Misc
    (II) Loading extension XFree86-DGA
    (II) Loading extension DPMS
    (II) Loading extension TOG-CUP
    (II) Loading extension Extended-Visual-Information
    (II) Loading extension XVideo
    (II) Loading extension XVideo-MotionCompensation
    (II) Loading extension X-Resource
    (II) LoadModule: "synaptics"
    (II) Loading /usr/lib/xorg/modules/input//synaptics_drv.so
    (II) Module synaptics: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 0.15.2
    Module class: X.Org XInput Driver
    ABI class: X.Org XInput driver, version 2.1
    (II) LoadModule: "xtrap"
    (II) Loading /usr/lib/xorg/modules/extensions//libxtrap.so
    (II) Module xtrap: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension DEC-XTRAP
    (II) LoadModule: "freetype"
    (II) Loading /usr/lib/xorg/modules/fonts//libfreetype.so
    (II) Module freetype: vendor="X.Org Foundation & the After X-TT Project"
    compiled for 1.5.0, module version = 2.1.0
    Module class: X.Org Font Renderer
    ABI class: X.Org Font Renderer, version 0.6
    (II) Loading font FreeType
    (II) LoadModule: "evdev"
    (II) Loading /usr/lib/xorg/modules/input//evdev_drv.so
    (II) Module evdev: vendor="X.Org Foundation"
    compiled for 1.4.99.906, module version = 2.0.4
    Module class: X.Org XInput Driver
    ABI class: X.Org XInput driver, version 2.1
    (II) LoadModule: "intel"
    (II) Loading /usr/lib/xorg/modules/drivers//intel_drv.so
    (II) Module intel: vendor="X.Org Foundation"
    compiled for 1.4.99.906, module version = 2.4.2
    Module class: X.Org Video Driver
    ABI class: X.Org Video Driver, version 4.1
    (II) LoadModule: "synaptics"
    (II) Reloading /usr/lib/xorg/modules/input//synaptics_drv.so
    (II) LoadModule: "kbd"
    (II) Loading /usr/lib/xorg/modules/input//kbd_drv.so
    (II) Module kbd: vendor="X.Org Foundation"
    compiled for 1.4.2, module version = 1.3.1
    Module class: X.Org XInput Driver
    ABI class: X.Org XInput driver, version 2.0
    (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
    i810-dc100, i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G,
    E7221 (i915), 915GM, 945G, 945GM, 945GME, 965G, G35, 965Q, 946GZ,
    965GM, 965GME/GLE, G33, Q35, Q33,
    Mobile Intel® GM45 Express Chipset,
    Intel Integrated Graphics Device, G45/G43, Q45/Q43
    (II) Primary Device is: PCI 00@00:02:0
    (II) resource ranges after xf86ClaimFixedResources() call:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [5] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    (II) resource ranges after probing:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] 0 0 0x000a0000 - 0x000affff (0x10000) MS[b]
    [5] 0 0 0x000b0000 - 0x000b7fff (0x8000) MS[b]
    [6] 0 0 0x000b8000 - 0x000bffff (0x8000) MS[b]
    [7] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [8] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    [9] 0 0 0x000003b0 - 0x000003bb (0xc) IS[b]
    [10] 0 0 0x000003c0 - 0x000003df (0x20) IS[b]
    (II) Loading sub module "int10"
    (II) LoadModule: "int10"
    (II) Loading /usr/lib/xorg/modules//libint10.so
    (II) Module int10: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    ABI class: X.Org Video Driver, version 4.1
    (II) Loading sub module "vbe"
    (II) LoadModule: "vbe"
    (II) Loading /usr/lib/xorg/modules//libvbe.so
    (II) Module vbe: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.1.0
    ABI class: X.Org Video Driver, version 4.1
    (II) Loading sub module "vgahw"
    (II) LoadModule: "vgahw"
    (II) Loading /usr/lib/xorg/modules//libvgahw.so
    (II) Module vgahw: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 0.1.0
    ABI class: X.Org Video Driver, version 4.1
    (==) intel(0): Depth 24, (==) framebuffer bpp 32
    (==) intel(0): RGB weight 888
    (==) intel(0): Default visual is TrueColor
    (**) intel(0): Option "AccelMethod" "exa"
    (II) intel(0): Integrated Graphics Chipset: Intel(R) 945GM
    (--) intel(0): Chipset: "945GM"
    (--) intel(0): Linear framebuffer at 0xC0000000
    (--) intel(0): IO registers at addr 0xD0300000
    (II) intel(0): 2 display pipes available.
    (**) intel(0): Using EXA for acceleration
    (II) Loading sub module "int10"
    (II) LoadModule: "int10"
    (II) Reloading /usr/lib/xorg/modules//libint10.so
    (II) intel(0): initializing int10
    (WW) intel(0): Bad V_BIOS checksum
    (II) intel(0): Primary V_BIOS segment is: 0xc000
    (II) intel(0): VESA BIOS detected
    (II) intel(0): VESA VBE Version 3.0
    (II) intel(0): VESA VBE Total Mem: 7872 kB
    (II) intel(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
    (II) intel(0): VESA VBE OEM Software Rev: 1.0
    (II) intel(0): VESA VBE OEM Vendor: Intel Corporation
    (II) intel(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
    (II) intel(0): VESA VBE OEM Product Rev: Hardware Version 0.0
    (II) Loading sub module "ddc"
    (II) LoadModule: "ddc"
    (II) Module "ddc" already built-in
    (II) Loading sub module "i2c"
    (II) LoadModule: "i2c"
    (II) Module "i2c" already built-in
    (II) intel(0): Output VGA using monitor section Monitor0
    (II) intel(0): I2C bus "CRTDDC_A" initialized.
    (II) intel(0): Output LVDS has no monitor section
    (II) intel(0): I2C bus "LVDSDDC_C" initialized.
    (II) intel(0): Attempting to determine panel fixed mode.
    (II) intel(0): I2C device "LVDSDDC_C:ddc2" registered at address 0xA0.
    (II) intel(0): EDID vendor "LPL", prod id 49152
    (II) intel(0): found backlight control method /sys/class/backlight/acpi_video1
    (II) intel(0): Output TV has no monitor section
    (II) intel(0): EDID vendor "LPL", prod id 49152
    (II) intel(0): Output VGA disconnected
    (II) intel(0): Output LVDS connected
    (II) intel(0): Output TV disconnected
    (II) intel(0): Using exact sizes for initial modes
    (II) intel(0): Output LVDS using initial mode 1280x800
    (II) intel(0): Monitoring connected displays enabled
    (II) intel(0): detected 256 kB GTT.
    (II) intel(0): detected 7932 kB stolen memory.
    (==) intel(0): video overlay key set to 0x101fe
    (==) intel(0): Will not try to enable page flipping
    (==) intel(0): Triple buffering disabled
    (==) intel(0): Intel XvMC decoder disabled
    (==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
    (==) intel(0): DPI set to (96, 96)
    (II) Loading sub module "fb"
    (II) LoadModule: "fb"
    (II) Loading /usr/lib/xorg/modules//libfb.so
    (II) Module fb: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 1.0.0
    ABI class: X.Org ANSI C Emulation, version 0.4
    (II) Loading sub module "exa"
    (II) LoadModule: "exa"
    (II) Loading /usr/lib/xorg/modules//libexa.so
    (II) Module exa: vendor="X.Org Foundation"
    compiled for 1.5.0, module version = 2.4.0
    ABI class: X.Org Video Driver, version 4.1
    (II) Loading sub module "ramdac"
    (II) LoadModule: "ramdac"
    (II) Module "ramdac" already built-in
    (II) intel(0): Comparing regs from server start up to After PreInit
    (WW) intel(0): Register 0x61200 (PP_STATUS) changed from 0xc0000008 to 0xd000000a
    (WW) intel(0): PP_STATUS before: on, ready, sequencing idle
    (WW) intel(0): PP_STATUS after: on, ready, sequencing on
    (WW) intel(0): Register 0x71024 (PIPEBSTAT) changed from 0x00000202 to 0x80000202
    (WW) intel(0): PIPEBSTAT before: status: VSYNC_INT_STATUS VBLANK_INT_STATUS
    (WW) intel(0): PIPEBSTAT after: status: FIFO_UNDERRUN VSYNC_INT_STATUS VBLANK_INT_STATUS
    (==) Depth 24 pixmap format is 32 bpp
    (II) do I need RAC? No, I don't.
    (II) resource ranges after preInit:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] 0 0 0x000a0000 - 0x000affff (0x10000) MS[b](OprD)
    [5] 0 0 0x000b0000 - 0x000b7fff (0x8000) MS[b](OprD)
    [6] 0 0 0x000b8000 - 0x000bffff (0x8000) MS[b](OprD)
    [7] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [8] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    [9] 0 0 0x000003b0 - 0x000003bb (0xc) IS[b](OprU)
    [10] 0 0 0x000003c0 - 0x000003df (0x20) IS[b](OprU)
    (II) intel(0): Kernel reported 238592 total, 1 used
    (II) intel(0): I830CheckAvailableMemory: 954364 kB available
    drmOpenDevice: node name is /dev/dri/card0
    drmOpenDevice: open result is 11, (OK)
    drmOpenDevice: node name is /dev/dri/card0
    drmOpenDevice: open result is 11, (OK)
    drmOpenByBusid: Searching for BusID pci:0000:00:02.0
    drmOpenDevice: node name is /dev/dri/card0
    drmOpenDevice: open result is 11, (OK)
    drmOpenByBusid: drmOpenMinor returns 11
    drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
    (II) [drm] DRM interface version 1.3
    (II) [drm] DRM open master succeeded.
    (II) intel(0): [drm] Using the DRM lock SAREA also for drawables.
    (II) intel(0): [drm] framebuffer mapped by ddx driver
    (II) intel(0): [drm] added 1 reserved context for kernel
    (II) intel(0): X context handle = 0x1
    (II) intel(0): [drm] installed DRM signal handler
    (**) intel(0): Framebuffer compression enabled
    (**) intel(0): Tiling enabled
    (==) intel(0): VideoRam: 262144 KB
    (II) intel(0): Attempting memory allocation with tiled buffers.
    (II) intel(0): Tiled allocation successful.
    (II) intel(0): [drm] Registers = 0xd0300000
    (II) intel(0): [drm] ring buffer = 0xc0000000
    (II) intel(0): [drm] mapped front buffer at 0xc1000000, handle = 0xc1000000
    (II) intel(0): [drm] mapped back buffer at 0xc4000000, handle = 0xc4000000
    (II) intel(0): [drm] mapped depth buffer at 0xc5000000, handle = 0xc5000000
    (II) intel(0): [drm] mapped classic textures at 0xc6000000, handle = 0xc6000000
    (II) intel(0): [drm] Initialized kernel agp heap manager, 33554432
    (II) intel(0): [dri] visual configs initialized
    (II) intel(0): Page Flipping disabled
    (II) intel(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is 0x0000
    (II) EXA(0): Offscreen pixmap area of 31457280 bytes
    (II) EXA(0): Driver registered support for the following operations:
    (II) Solid
    (II) Copy
    (II) Composite (RENDER acceleration)
    (==) intel(0): Backing store disabled
    (==) intel(0): Silken mouse enabled
    (II) intel(0): Initializing HW Cursor
    (II) intel(0): [DRI] installation complete
    (II) intel(0): xf86BindGARTMemory: bind key 0 at 0x01000000 (pgoffset 4096)
    (II) intel(0): xf86BindGARTMemory: bind key 1 at 0x02000000 (pgoffset 8192)
    (II) intel(0): xf86BindGARTMemory: bind key 2 at 0x04000000 (pgoffset 16384)
    (II) intel(0): xf86BindGARTMemory: bind key 3 at 0x05000000 (pgoffset 20480)
    (II) intel(0): xf86BindGARTMemory: bind key 4 at 0x06000000 (pgoffset 24576)
    (II) intel(0): Fixed memory allocation layout:
    (II) intel(0): 0x00000000-0x0001ffff: ring buffer (128 kB)
    (II) intel(0): 0x00020000-0x0061ffff: compressed frame buffer (6144 kB, 0x000000003f820000 physical
    (II) intel(0): 0x00620000-0x00620fff: compressed ll buffer (4 kB, 0x000000003fe20000 physical
    (II) intel(0): 0x00621000-0x0062afff: HW cursors (40 kB, 0x000000003fe21000 physical
    (II) intel(0): 0x0062b000-0x00632fff: logical 3D context (32 kB)
    (II) intel(0): 0x00633000-0x00633fff: overlay registers (4 kB, 0x000000003fe33000 physical
    (II) intel(0): 0x007bf000: end of stolen memory
    (II) intel(0): 0x01000000-0x01ffffff: front buffer (10240 kB) X tiled
    (II) intel(0): 0x02000000-0x03dfffff: exa offscreen (30720 kB)
    (II) intel(0): 0x04000000-0x04ffffff: back buffer (10240 kB) X tiled
    (II) intel(0): 0x05000000-0x05ffffff: depth buffer (10240 kB) X tiled
    (II) intel(0): 0x06000000-0x07ffffff: classic textures (32768 kB)
    (II) intel(0): 0x10000000: end of aperture
    (II) intel(0): Selecting standard 18 bit TMDS pixel format.
    (II) intel(0): Output configuration:
    (II) intel(0): Pipe A is off
    (II) intel(0): Display plane A is now disabled and connected to pipe A.
    (II) intel(0): Pipe B is on
    (II) intel(0): Display plane B is now enabled and connected to pipe B.
    (II) intel(0): Output VGA is connected to pipe none
    (II) intel(0): Output LVDS is connected to pipe B
    (II) intel(0): Output TV is connected to pipe none
    (II) intel(0): [drm] dma control initialized, using IRQ 16
    (II) intel(0): RandR 1.2 enabled, ignore the following RandR disabled message.
    (II) intel(0): Selecting standard 18 bit TMDS pixel format.
    (II) intel(0): DPMS enabled
    (II) intel(0): Set up textured video
    (II) intel(0): Set up overlay video
    (II) intel(0): direct rendering: Enabled
    (--) RandR disabled
    (II) Initializing built-in extension MIT-SHM
    (II) Initializing built-in extension XInputExtension
    (II) Initializing built-in extension XTEST
    (II) Initializing built-in extension XKEYBOARD
    (II) Initializing built-in extension XC-APPGROUP
    (II) Initializing built-in extension SECURITY
    (II) Initializing built-in extension XINERAMA
    (II) Initializing built-in extension XFIXES
    (II) Initializing built-in extension RENDER
    (II) Initializing built-in extension RANDR
    (II) Initializing built-in extension COMPOSITE
    (II) Initializing built-in extension DAMAGE
    (II) Initializing built-in extension XEVIE
    (II) AIGLX: Screen 0 is not DRI2 capable
    drmOpenDevice: node name is /dev/dri/card0
    drmOpenDevice: open result is 12, (OK)
    drmOpenByBusid: Searching for BusID pci:0000:00:02.0
    drmOpenDevice: node name is /dev/dri/card0
    drmOpenDevice: open result is 12, (OK)
    drmOpenByBusid: drmOpenMinor returns 12
    drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
    (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
    (II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
    (II) AIGLX: enabled GLX_texture_from_pixmap with driver support
    (II) AIGLX: Loaded and initialized /usr/lib/xorg/modules/dri/i915_dri.so
    (II) GLX: Initialized DRI GL provider for screen 0
    (II) intel(0): Setting screen physical size to 304 x 190
    (II) Synaptics touchpad driver version 0.15.2
    (--) Mouse0 auto-dev sets device to /dev/input/event8
    (II) Mouse0: x-axis range 1472 - 5472
    (II) Mouse0: y-axis range 1408 - 4448
    (**) Option "Device" "/dev/input/event8"
    (**) Option "SHMConfig" "true"
    (**) Option "LeftEdge" "1700"
    (**) Option "RightEdge" "5300"
    (**) Option "TopEdge" "1700"
    (**) Option "BottomEdge" "4200"
    (**) Option "FingerLow" "25"
    (**) Option "FingerHigh" "30"
    (**) Option "MaxTapTime" "180"
    (**) Option "MaxTapMove" "220"
    (**) Option "VertScrollDelta" "100"
    (--) Mouse0 touchpad found
    (**) Option "CorePointer"
    (**) Mouse0: always reports core events
    (**) Option "CoreKeyboard"
    (**) Keyboard0: always reports core events
    (**) Option "Protocol" "standard"
    (**) Keyboard0: Protocol: standard
    (**) Option "AutoRepeat" "500 30"
    (**) Option "XkbRules" "xorg"
    (**) Keyboard0: XkbRules: "xorg"
    (**) Option "XkbModel" "pc105"
    (**) Keyboard0: XkbModel: "pc105"
    (**) Option "XkbLayout" "us"
    (**) Keyboard0: XkbLayout: "us"
    (**) Option "CustomKeycodes" "off"
    (**) Keyboard0: CustomKeycodes disabled
    (II) evaluating device (Mouse0)
    (II) XINPUT: Adding extended input device "Mouse0" (type: TOUCHPAD)
    (II) evaluating device (Keyboard0)
    (II) XINPUT: Adding extended input device "Keyboard0" (type: KEYBOARD)
    (II) Mouse0: x-axis range 1472 - 5472
    (II) Mouse0: y-axis range 1408 - 4448
    (--) Mouse0 touchpad found
    (II) config/hal: Adding input device SynPS/2 Synaptics TouchPad
    (II) Synaptics touchpad driver version 0.15.2
    (II) SynPS/2 Synaptics TouchPad: x-axis range 1472 - 5472
    (II) SynPS/2 Synaptics TouchPad: y-axis range 1408 - 4448
    (**) Option "Device" "/dev/input/event8"
    (--) SynPS/2 Synaptics TouchPad touchpad found
    (**) SynPS/2 Synaptics TouchPad: always reports core events
    (II) XINPUT: Adding extended input device "SynPS/2 Synaptics TouchPad" (type: TOUCHPAD)
    (II) SynPS/2 Synaptics TouchPad: x-axis range 1472 - 5472
    (II) SynPS/2 Synaptics TouchPad: y-axis range 1408 - 4448
    (WW) SynPS/2 Synaptics TouchPad can't grab event device, errno=16
    (--) SynPS/2 Synaptics TouchPad touchpad found
    (II) config/hal: Adding input device Video Bus
    (**) Video Bus: always reports core events
    (**) Video Bus: Device: "/dev/input/event6"
    (II) Video Bus: Found keys
    (II) Video Bus: Configuring as keyboard
    (II) XINPUT: Adding extended input device "Video Bus" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) Video Bus: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) Video Bus: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) Video Bus: xkb_layout: "us"
    (II) config/hal: Adding input device Video Bus
    (**) Video Bus: always reports core events
    (**) Video Bus: Device: "/dev/input/event5"
    (II) Video Bus: Found keys
    (II) Video Bus: Configuring as keyboard
    (II) XINPUT: Adding extended input device "Video Bus" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) Video Bus: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) Video Bus: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) Video Bus: xkb_layout: "us"
    (II) config/hal: Adding input device AT Translated Set 2 keyboard
    (**) AT Translated Set 2 keyboard: always reports core events
    (**) AT Translated Set 2 keyboard: Device: "/dev/input/event1"
    (II) AT Translated Set 2 keyboard: Found keys
    (II) AT Translated Set 2 keyboard: Configuring as keyboard
    (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) AT Translated Set 2 keyboard: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) AT Translated Set 2 keyboard: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) AT Translated Set 2 keyboard: xkb_layout: "us"
    (II) config/hal: Adding input device Macintosh mouse button emulation
    (**) Macintosh mouse button emulation: always reports core events
    (**) Macintosh mouse button emulation: Device: "/dev/input/event0"
    (II) Macintosh mouse button emulation: Found x and y relative axes
    (II) Macintosh mouse button emulation: Found mouse buttons
    (II) Macintosh mouse button emulation: Configuring as mouse
    (II) XINPUT: Adding extended input device "Macintosh mouse button emulation" (type: MOUSE)
    (II) UnloadModule: "synaptics"
    (II) UnloadModule: "kbd"
    (II) UnloadModule: "synaptics"
    (II) Video Bus: Close
    (II) UnloadModule: "evdev"
    (II) Video Bus: Close
    (II) UnloadModule: "evdev"
    (II) AT Translated Set 2 keyboard: Close
    (II) UnloadModule: "evdev"
    (II) Macintosh mouse button emulation: Close
    (II) UnloadModule: "evdev"
    (II) intel(0): xf86UnbindGARTMemory: unbind key 0
    (II) intel(0): xf86UnbindGARTMemory: unbind key 1
    (II) intel(0): xf86UnbindGARTMemory: unbind key 2
    (II) intel(0): xf86UnbindGARTMemory: unbind key 3
    (II) intel(0): xf86UnbindGARTMemory: unbind key 4
    (II) intel(0): [drm] removed 1 reserved context for kernel
    (II) intel(0): [drm] unmapping 8192 bytes of SAREA 0xf8acb000 at 0xb7a29000
    (II) intel(0): [drm] Closed DRM master.
    xorg.conf
    Section "ServerLayout"
    Identifier "X.org Configured"
    Screen 0 "Screen0" 0 0
    InputDevice "Mouse0" "CorePointer"
    InputDevice "Keyboard0" "CoreKeyboard"
    EndSection
    Section "Files"
    # RgbPath "/usr/share/X11/rgb"
    ModulePath "/usr/lib/xorg/modules"
    FontPath "/usr/share/fonts/misc"
    FontPath "/usr/share/fonts/100dpi:unscaled"
    FontPath "/usr/share/fonts/75dpi:unscaled"
    FontPath "/usr/share/fonts/TTF"
    FontPath "/usr/share/fonts/Type1"
    EndSection
    Section "Module"
    Load "dri"
    Load "glx"
    # Load "record"
    Load "GLcore"
    Load "dbe"
    Load "extmod"
    Load "synaptics"
    Load "xtrap"
    Load "freetype"
    Load "evdev"
    EndSection
    Section "InputDevice"
    Identifier "Keyboard0"
    Driver "kbd"
    EndSection
    Section "InputDevice"
    Driver "synaptics"
    Identifier "Mouse0"
    Option "Device" "/dev/mouse0"
    Option "Protocol" "auto-dev"
    Option "LeftEdge" "1700"
    Option "RightEdge" "5300"
    Option "TopEdge" "1700"
    Option "BottomEdge" "4200"
    Option "FingerLow" "25"
    Option "FingerHigh" "30"
    Option "MaxTapTime" "180"
    Option "MaxTapMove" "220"
    Option "VertScrollDelta" "100"
    Option "MinSpeed" "0.06"
    Option "MaxSpeed" "0.12"
    Option "AccelFactor" "0.0030"
    Option "SHMConfig" "true"
    # Option "Repeater" "/dev/ps2mouse"
    EndSection
    Section "InputDevice"
    Identifier "Mouse0"
    Driver "mouse"
    Option "Protocol" "auto"
    Option "Device" "/dev/input/mice"
    Option "ZAxisMapping" "4 5 6 7"
    EndSection
    Section "Monitor"
    #DisplaySize 1280 800 # mm
    Identifier "Monitor0"
    VendorName "LPL"
    ModelName "c000"
    EndSection
    Section "Device"
    ### Available Driver options are:-
    ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
    ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
    ### [arg]: arg optional
    #Option "NoAccel" # [<bool>]
    #Option "SWcursor" # [<bool>]
    #Option "ColorKey" # <i>
    #Option "CacheLines" # <i>
    #Option "Dac6Bit" # [<bool>]
    #Option "DRI" # [<bool>]
    #Option "NoDDC" # [<bool>]
    #Option "ShowCache" # [<bool>]
    #Option "XvMCSurfaces" # <i>
    #Option "PageFlip" # [<bool>]
    Identifier "Card0"
    Driver "intel"
    VendorName "Intel Corporation"
    BoardName "Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
    BusID "PCI:0:2:0"
    Option "AccelMethod" "exa"
    EndSection
    Section "Screen"
    Identifier "Screen0"
    Device "Card0"
    Monitor "Monitor0"
    SubSection "Display"
    Viewport 0 0
    Depth 1
    EndSubSection
    SubSection "Display"
    Viewport 0 0
    Depth 4
    EndSubSection
    SubSection "Display"
    Viewport 0 0
    Depth 8
    EndSubSection
    SubSection "Display"
    Viewport 0 0
    Depth 15
    EndSubSection
    SubSection "Display"
    Viewport 0 0
    Depth 16
    EndSubSection
    SubSection "Display"
    Viewport 0 0
    Depth 24
    EndSubSection
    EndSection
    .xinitrc
    #!/bin/sh
    exec openbox-session
    #ivman &
    #exec awesome &
    #/usr/lib/wicd/wicd-client.py &
    #xterm -bg black -fg white
    rc.lua
    -- GGLucas' Awesome-3 Lua Config :D
    -- Version 2
    -- This config is for use with awesome 3.0.
    -- If you have any suggestions or questions, feel free
    -- to pass me a message, find me in #awesome on OFTC, or
    -- email me at <lucas[at]glacicle.com>
    -- I use both wicked and eminent, so to use it,
    -- you'll need to get both those helper libraries too.
    -- Note that I use all-custom keybindings, so you might
    -- want to copy the default rc.lua's keybindings
    -- into here if you wish to use those, although you might
    -- find you like mine better :P
    ---- {{{ Require lua libraries
    -- Shipped with awesome
    require("awful")
    require("beautiful")
    -- External
    require("wicked") -- Widgets
    require("eminent") -- Dynamic tagging
    ---- {{{ 'Beautiful' theme settings
    -- Font
    beautiful.font = "Terminus 8"
    -- Background
    beautiful.bg_normal = '#22222222'
    beautiful.bg_focus = '#285577'
    beautiful.bg_sbfocus = '#11335565'
    beautiful.bg_urgent = '#A10000'
    -- Foreground
    beautiful.fg_normal = '#999999'
    beautiful.fg_focus = '#ffffff'
    beautiful.fg_urgent = '#ffffff'
    -- Border
    beautiful.border_width = 2
    beautiful.border_normal = '#333333'
    beautiful.border_focus = '#4C7899'
    beautiful.border_marked = '#91231c'
    ---- {{{ Modkeys
    key = {}
    key.none = {}
    key.alt = {"Mod1"}
    key.super = {"Mod4"}
    key.shift = {"Shift"}
    key.control = {"Control"}
    key.super_alt = {key.super[1], key.alt[1]}
    key.super_shift = {key.super[1], key.shift[1]}
    key.super_control = {key.super[1], key.control[1]}
    key.control_alt = {key.control[1], key.alt[1]}
    key.shift_alt = {key.shift[1], key.alt[1]}
    ---- {{{ Settings
    -- Initialise tables
    settings = {}
    settings.widget = {}
    settings.apps = {}
    settings.tag = {}
    settings.bindings = {}
    -- {{{ General
    -- Widget spacer and separator
    settings.widget_spacer = " "
    settings.widget_separator = " "
    -- Warp mouse
    settings.warp_mouse = true
    -- New become master
    settings.new_become_master = false
    -- Tag mwfact
    settings.tag.mwfact = 0.618033988769
    -- {{{ Applications
    -- Terminal application
    settings.apps.terminal = 'xterm'
    -- Terminal with gnu screen
    settings.apps.gnu_screen = settings.apps.terminal..' -e zsh -c "exec screen -x main"'
    -- Terminal with gnu screen over ssh to my main machine
    settings.apps.gnu_screen_ssh_desktop = settings.apps.terminal..' -e zsh -c "ssh -t me.glacicle.com screen -x main"'
    -- Terminal with gnu screen over ssh to my vps server
    settings.apps.gnu_screen_ssh_server = settings.apps.terminal..' -e zsh -c "ssh -t glacicle.com screen -x"'
    -- Command to lock the screen
    settings.apps.lock_screen = 'xscreensaver-command -lock'
    -- Command to turn screen off with DPMS
    settings.apps.screen_off = 'sleep 1; xset dpms force off'
    -- File manager application
    settings.apps.filemanager = settings.apps.terminal..' -e zsh -c "vifm %s"'
    -- Toggle music
    -- Note: mpdtoggle is my own script for finding out if
    -- I want to toggle or play/stop, replace it with mpc if
    -- you wish to use it.
    settings.apps.music_toggle = "mpdtoggle toggle"
    -- {{{ Floating windows
    settings.floating = {
    ["gimp"] = true,
    ["urxvtcnotify"] = true,
    -- {{{ Other
    -- Check what widget mode to use
    if io.open(os.getenv("HOME").."/.laptop_mode") then
    -- Special file exists, display widgets I want
    -- on my laptop
    settings.widget_mode = 'laptop'
    else
    settings.widget_mode = 'desktop'
    end
    -- Highlight statusbar of focussed screen on multiple-monitor setups
    if screen.count() > 1 then
    settings.statusbar_highlight_focus = {true, 1}
    end
    ---- {{{ Keybindings
    -- Initialise table
    settings.bindings.wm = {}
    settings.bindings.mouse = {}
    -- {{{ Open the filemanager at specific locations
    settings.bindings.filemanager = {
    -- Data partition
    ["/data"] = {key.alt, "d"},
    -- Data partition on desktop pc from laptop (sshfs mount)
    ["/desktop/data"] = {key.shift_alt, "d"},
    -- Home Directory
    [os.getenv("HOME")] = {key.alt, "a"},
    -- {{{ Run specific commands
    settings.bindings.commands = {
    -- Open Terminal
    [settings.apps.terminal] = {key.alt, "q"},
    -- GNU Screen
    [settings.apps.gnu_screen] = {key.super, "k"},
    -- GNU Screen over SSH to Desktop
    [settings.apps.gnu_screen_ssh_desktop] = {key.super_shift, "k"},
    -- GNU Screen over SSH to VPS
    [settings.apps.gnu_screen_ssh_server] = {key.super_alt, "k"},
    -- Lock screen
    [settings.apps.lock_screen] = {key.super, "l"},
    -- Screen off with DPMS
    [settings.apps.screen_off] = {key.super, "o"},
    -- Toggle music
    [settings.apps.music_toggle] = {key.alt, "e"},
    -- {{{ Client keybindings
    settings.bindings.wm.client = {
    -- Alt+`: Close window
    [function() client.focus:kill() end] = {key.alt, "#49"},
    -- Mod+q: Focus previous window
    [function() awful.client.focusbyidx(-1) end] = {key.super, "q"},
    -- Mod+w: Focus next window
    [function() awful.client.focusbyidx(1) end] = {key.super, "w"},
    -- Mod+Shift+q: Swap with previous window
    [function() awful.client.swap(-1) end] = {key.super_shift, "q"},
    -- Mod+Shift+w: Swap with previous window
    [function() awful.client.swap(1) end] = {key.super_shift, "w"},
    -- Mod+c: Toggle floating
    [awful.client.togglefloating] = {key.super, "c"},
    -- Mod+\: Make window master
    [function() local c = awful.client.master(); if c ~= client.focus then c:swap(client.focus) end end] =
    {key.super, "#51"},
    -- Mod+Shift+a: Move window to previous tag
    [function () awful.client.movetotag(eminent.tag.getprev(mouse.screen)) end] =
    {key.super_shift, "a"},
    -- Mod+Shift+s: Move window to next tag
    [function () awful.client.movetotag(eminent.tag.getnext(mouse.screen)) end] =
    {key.super_shift, "s"},
    -- Mod+Shift+e: Move window to next screen
    [function () s = client.focus.screen+1; if s > screen.count() then s = 1 end; client.focus.screen = s end] =
    {key.super_shift, "e"},
    -- Mod+Shift+d: Move window to previous screen
    [function () s = client.focus.screen-1; if s < 1 then s = screen.count() end; client.focus.screen = s end] =
    {key.super_shift, "d"},
    -- {{{ Tag bindings
    settings.bindings.wm.tag = {
    -- Mod+a: Switch to previous tag
    [function() eminent.tag.prev(mouse.screen) end] = {key.super, "a"},
    -- Mod+s: Switch to next tag
    [function() eminent.tag.next(mouse.screen) end] = {key.super, "s"},
    -- Alt+\: Switch to float layout
    [function() awful.layout.set('floating') end] = {key.alt, "#51"},
    -- Alt+z: Switch to max layout
    [function() awful.layout.set('max') end] = {key.alt, "z"},
    -- Alt+x: Switch to tile layout
    [function() awful.layout.set('tile') end] = {key.alt, "x"},
    -- {{{ Prompt bindings
    settings.bindings.prompt = {
    -- Alt+w: Run prompt
    [{awful.spawn, " Run: "}] = {key.alt, "w"},
    -- Mod+Alt+w: Lua eval prompt
    [{awful.eval, " Run Lua: "}] = {key.super_alt, "w"},
    -- {{{ Miscellaneous bindings
    settings.bindings.wm.misc = {
    -- Mod+Alt+r: Restart awesome
    [awesome.restart] = {key.super_alt, "r"},
    -- Mod+e: Switch focus to next screen
    [function() awful.screen.focus(1) end] = {key.super, "e"},
    -- Mod+d: Switch focus to previous screen
    [function() awful.screen.focus(-1) end] = {key.super, "d"},
    -- {{{ Keyboard digit bindings
    settings.bindings.digits = {
    -- Mod+##: View tag
    [awful.tag.viewonly] = key.super,
    -- Mod+Shift+##: Toggle tag view
    [function(t) t.selected = not t.selected end] = key.super_shift,
    -- Mod+Control+##: Move window to tag
    [awful.client.movetotag] = key.super_control,
    -- Mod+Alt+##: Toggle window on tag
    [awful.client.toggletag] = key.super_alt,
    -- {{{ Mouse bindings
    settings.bindings.mouse.desktop = {
    -- Right click on desktop: Open terminal
    [function() awful.spawn(settings.apps.terminal) end] = {key.none, 3},
    settings.bindings.mouse.client = {
    -- Alt+Left: Move window
    [function(c) c:mouse_move() end] = {key.alt, 1},
    -- Alt+Right: Resize window
    [function(c) c:mouse_resize({corner="bottomright"}) end] = {key.alt, 3},
    ---- {{{ Markup helper functions
    -- Inline markup is a tad ugly, so use these functions
    -- to dynamically create markup, we hook them into
    -- the beautiful namespace for clarity.
    beautiful.markup = {}
    function beautiful.markup.bg(color, text)
    return '<bg color="'..color..'" />'..text
    end
    function beautiful.markup.fg(color, text)
    return '<span color="'..color..'">'..text..'</span>'
    end
    function beautiful.markup.font(font, text)
    return '<span font_desc="'..font..'">'..text..'</span>'
    end
    function beautiful.markup.title(t)
    return t
    end
    function beautiful.markup.title_normal(t)
    return beautiful.title(t)
    end
    function beautiful.markup.title_focus(t)
    return beautiful.markup.bg(beautiful.bg_focus, beautiful.markup.fg(beautiful.fg_focus, beautiful.markup.title(t)))
    end
    function beautiful.markup.title_urgent(t)
    return beautiful.markup.bg(beautiful.bg_urgent, beautiful.markup.fg(beautiful.fg_urgent, beautiful.markup.title(t)))
    end
    function beautiful.markup.bold(text)
    return '<b>'..text..'</b>'
    end
    function beautiful.markup.heading(text)
    return beautiful.markup.fg(beautiful.fg_focus, beautiful.markup.bold(text))
    end
    ---- {{{ Widgets
    settings.statusbars = {}
    settings.widgets = {}
    settings.statusbars[1] = {{
    position = "top",
    height = 18,
    fg = beautiful.fg_normal,
    bg = beautiful.bg_normal,
    name = "mainstatusbar",
    }, "all"}
    settings.promptbar = {
    position = "top",
    height = 18,
    fg = beautiful.fg_normal,
    bg = beautiful.bg_normal,
    name = "promptbar",
    -- {{{ Taglist
    maintaglist = widget({
    type = 'taglist',
    name = 'maintaglist'
    function maintaglist.label(t)
    return awful.widget.taglist.label.noempty(t)
    end
    maintaglist:mouse_add(mouse(key.none, 1, function (o, t) awful.tag.viewonly(t) end))
    table.insert(settings.widgets, {1, maintaglist})
    if settings.widget_mode == 'laptop' or settings.widget_mode == 'all' then
    -- {{{ Battery Widget
    batterywidget = widget({
    type = 'textbox',
    name = 'batterywidget',
    align = 'right'
    function read_battery_temp(format)
    local f = io.open('/tmp/battery-temp')
    if f == nil then
    return {'n/a'}
    end
    local n = f:read()
    if n == nil then
    f:close()
    return {'n/a'}
    end
    return {awful.escape(n)}
    end
    wicked.register(batterywidget, read_battery_temp,
    settings.widget_spacer..beautiful.markup.heading('Battery')..': $1'..settings.widget_spacer..settings.widget_separator,
    30)
    -- Start timer to read the temp file
    awful.hooks.timer.register(28, function ()
    -- Call battery script to get batt%
    command = "battery"
    os.execute(command..' > /tmp/battery-temp &')
    end, true)
    table.insert(settings.widgets, {1, batterywidget})
    end
    if settings.widget_mode ~= 'none' then
    -- {{{ MPD Widget
    mpdwidget = widget({
    type = 'textbox',
    name = 'mpdwidget',
    align = 'right'
    wicked.register(mpdwidget, wicked.widgets.mpd, function (widget, args)
    -- I don't want the stream name on my statusbar, so I gsub it out,
    -- feel free to remove this bit
    return settings.widget_spacer..beautiful.markup.heading('MPD')..': '
    ..args[1]:gsub('AnimeNfo Radio | Serving you the best Anime music!: ','')
    ..settings.widget_spacer..settings.widget_separator end)
    table.insert(settings.widgets, {1, mpdwidget})
    -- {{{ GMail Widget
    gmailwidget = widget({
    type = 'textbox',
    name = 'gmailwidget',
    align = 'right'
    gmailwidget:mouse_add(mouse(key.none, 1, function () wicked.update(gmailwidget) end))
    function read_gmail_temp(format)
    local f = io.open('/tmp/gmail-temp')
    if f == nil then
    return {'n/a'}
    end
    local n = f:read()
    if n == nil or f == ' ' or f == '' then
    f:close()
    return {'n/a'}
    end
    return {n}
    end
    wicked.register(gmailwidget, read_gmail_temp, function (widget, args)
    local n = args[1]
    local out = settings.widget_spacer..beautiful.markup.heading('GMail')..': '
    if n ~= "n/a" and tonumber(n) > 0 then
    out = out..beautiful.markup.bg(beautiful.bg_urgent, beautiful.markup.fg(beautiful.fg_urgent, tostring(n)))
    else
    out = out..tostring(n)
    end
    out = out..settings.widget_spacer..settings.widget_separator
    return out
    end, 120)
    -- Start timer to fill the temp file
    awful.hooks.timer.register(110, function ()
    -- Call GMail check script to check for new email
    os.execute(os.getenv("HOME")..'/other/.gmail.py > /tmp/gmail-temp &')
    end, true)
    wicked.update(gmailwidget)
    table.insert(settings.widgets, {1, gmailwidget})
    -- {{{ Load Averages Widget
    loadwidget = widget({
    type = 'textbox',
    name = 'loadwidget',
    align = 'right'
    function widget_loadavg(format)
    -- Use /proc/loadavg to get the average system load on 1, 5 and 15 minute intervals
    local f = io.open('/proc/loadavg')
    local n = f:read()
    f:close()
    -- Find the third space
    local pos = n:find(' ', n:find(' ', n:find(' ')+1)+1)
    return {n:sub(1,pos-1)}
    end
    wicked.register(loadwidget, widget_loadavg,
    settings.widget_spacer..beautiful.markup.heading('Load')..': $1'..settings.widget_spacer..settings.widget_separator, 2)
    table.insert(settings.widgets, {1, loadwidget})
    -- {{{ CPU Usage Widget
    cputextwidget = widget({
    type = 'textbox',
    name = 'cputextwidget',
    align = 'right'
    wicked.register(cputextwidget, wicked.widgets.cpu,
    settings.widget_spacer..beautiful.markup.heading('CPU')..': $1%'..settings.widget_spacer..settings.widget_separator,
    nil, nil, 2)
    table.insert(settings.widgets, {1, cputextwidget})
    -- {{{ CPU Graph Widget
    cpugraphwidget = widget({
    type = 'graph',
    name = 'cpugraphwidget',
    align = 'right'
    cpugraphwidget.height = 0.85
    cpugraphwidget.width = 45
    cpugraphwidget.bg = '#333333'
    cpugraphwidget.border_color = '#0a0a0a'
    cpugraphwidget.grow = 'left'
    cpugraphwidget:plot_properties_set('cpu', {
    fg = '#AEC6D8',
    fg_center = '#285577',
    fg_end = '#285577',
    vertical_gradient = false
    wicked.register(cpugraphwidget, wicked.widgets.cpu, '$1', 1, 'cpu')
    table.insert(settings.widgets, {1, cpugraphwidget})
    -- {{{ Memory Usage Widget
    memtextwidget = widget({
    type = 'textbox',
    name = 'memtextwidget',
    align = 'right'
    wicked.register(memtextwidget, wicked.widgets.mem,
    settings.widget_spacer..beautiful.markup.heading('MEM')..': '..
    '$1% ($2/$3)'..settings.widget_spacer..settings.widget_separator,
    3, nil, {2, 4, 4})
    table.insert(settings.widgets, {1, memtextwidget})
    -- {{{ Memory Graph Widget
    memgraphwidget = widget({
    type = 'graph',
    name = 'memgraphwidget',
    align = 'right'
    memgraphwidget.height = 0.85
    memgraphwidget.width = 45
    memgraphwidget.bg = '#333333'
    memgraphwidget.border_color = '#0a0a0a'
    memgraphwidget.grow = 'left'
    memgraphwidget:plot_properties_set('mem', {
    fg = '#AEC6D8',
    fg_center = '#285577',
    fg_end = '#285577',
    vertical_gradient = false
    wicked.register(memgraphwidget, wicked.widgets.mem, '$1', 1, 'mem')
    table.insert(settings.widgets, {1, memgraphwidget})
    -- {{{ Other Widget
    settings.widget_spacerwidget = widget({ type = 'textbox', name = 'settings.widget_spacerwidget', align = 'right' })
    settings.widget_spacerwidget.text = settings.widget_spacer..settings.widget_separator
    table.insert(settings.widgets, {1, settings.widget_spacerwidget})
    end
    -- You shouldn't have to edit the code after this,
    -- it takes care of applying the settings above.
    ---- {{{ Initialisations
    -- Register beautiful with awful
    awful.beautiful.register(beautiful)
    -- Set default colors
    awesome.colors_set({
    fg = beautiful.fg_normal,
    bg = beautiful.bg_normal })
    -- Set default font
    awesome.font_set(beautiful.font)
    -- Pre-create new tags with eminent
    for s=1, screen.count() do
    eminent.newtag(s, 5)
    end
    ---- {{{ Create statusbars
    local mainstatusbar = {}
    for i, b in pairs(settings.statusbars) do
    mainstatusbar[i] = {}
    for s=1,screen.count() do
    this_screen = false
    if b[2] ~= "all" then
    for sc in pairs(b[2]) do
    if sc == s then
    this_screen = true
    break
    end
    end
    end
    if b[2] == "all" or this_screen then
    mainstatusbar[i][s] = statusbar(b[1])
    local widgets = {}
    for ii, w in pairs(settings.widgets) do
    if w[1] == i then
    table.insert(widgets, w[2])
    end
    end
    mainstatusbar[i][s]:widgets(widgets)
    mainstatusbar[i][s].screen = s
    end
    end
    end
    ---- {{{ Create prompt statusbar
    local mainpromptbar = statusbar(settings.promptbar)
    local mainpromptbox = widget({type = "textbox", align = "left", name = "mainpromptbox"})
    mainpromptbar:widgets({mainpromptbox})
    mainpromptbar.screen = nil
    ---- {{{ Useful functions
    -- {{{ Mouse warp function
    function mouse_warp(c, force)
    -- Allow skipping a warp
    if warp_skip then
    warp_skip = false
    return
    end
    -- Get vars
    local sel = c or client.focus
    if sel == nil then return end
    local coords = sel:coords()
    local m = mouse.coords()
    -- Settings
    mouse_padd = 6
    border_area = 5
    -- Check if mouse is not already inside the window
    if (( m.x < coords.x-border_area or
    m.y < coords.y-border_area or
    m.x > coords.x+coords.width+border_area or
    m.y > coords.y+coords.height+border_area
    ) and (
    table.maxn(m.buttons) == 0
    )) or force
    then
    mouse.coords({ x=coords.x+mouse_padd, y=coords.y+mouse_padd})
    end
    end
    -- {{{ Prompt with statusbar
    function prompt_statusbar(s, callback, prompt)
    if not callback then callback = awful.spawn end
    if not prompt then prompt = " Run: " end
    for i, b in pairs(mainstatusbar) do
    for ii, bb in pairs(b) do
    if bb.screen == s then
    bb.screen = nil
    end
    end
    end
    mainpromptbar.screen = s
    awful.prompt.run({prompt = prompt}, mainpromptbox, callback,
    awful.completion.bash, os.getenv("HOME") .. "/.cache/awesome_history", 50, function ()
    mainpromptbar.screen = nil
    for i, b in pairs(mainstatusbar) do
    for ii, bb in pairs(b) do
    if ii == s then
    bb.screen = ii
    end
    end
    end
    end)
    end
    ---- {{{ Create bindings
    --- This reads the binding tables and turns them into actual keybindings
    -- WM Bindings
    for i,table in pairs(settings.bindings.wm) do
    for f, keys in pairs(table) do
    keybinding(keys[1], keys[2], f):add()
    end
    end
    -- Keyboard digit bindings
    for i=1,9 do
    for f, mod in pairs(settings.bindings.digits) do
    keybinding(mod, i, function()
    t = eminent.tag.getn(i, nil, true)
    if not t then return end
    f(t)
    end):add()
    end
    end
    -- Prompt Bindings
    for prompt, keys in pairs(settings.bindings.prompt) do
    keybinding(keys[1], keys[2], function() prompt_statusbar(mouse.screen, unpack(prompt)) end):add()
    end
    -- Filemanager bindings
    for loc, keys in pairs(settings.bindings.filemanager) do
    keybinding(keys[1], keys[2], function() awful.spawn(string.format(settings.apps.filemanager, loc)) end):add()
    end
    -- Custom command bindings
    for command, keys in pairs(settings.bindings.commands) do
    keybinding(keys[1], keys[2], function() awful.spawn(command) end):add()
    end
    -- Desktop mouse bindings
    for f, keys in pairs(settings.bindings.mouse.desktop) do
    awesome.mouse_add(mouse(keys[1], keys[2], f))
    end
    ---- {{{ Set hooks
    -- {{{ Focus hook
    awful.hooks.focus.register(function (c)
    -- Skip over my urxvtcnotify
    if c.name and c.name:lower():find('urxvtcnotify') and awful.client.next(1) ~= c then
    awful.client.focusbyidx(1)
    return
    end
    -- Set border
    c.border_color = beautiful.border_focus
    -- Raise the client
    c:raise()
    -- Set statusbar color
    if settings.statusbar_highlight_focus and settings.statusbar_highlight_focus[1] then
    if last_screen == nil or last_screen ~= c.screen then
    mainstatusbar[settings.statusbar_highlight_focus[2]][c.screen].bg = beautiful.bg_sbfocus
    if last_screen then
    mainstatusbar[settings.statusbar_highlight_focus[2]][last_screen].bg = beautiful.bg_normal
    end
    end
    last_screen = c.screen
    end
    end)
    -- {{{ Unfocus hook
    awful.hooks.unfocus.register(function (c)
    -- Set border
    c.border_color = beautiful.border_normal
    end)
    -- {{{ Mouseover hook
    awful.hooks.mouseover.register(function (c)
    -- Set focus for sloppy focus
    client.focus = c
    end)
    -- {{{ Manage hook
    awful.hooks.manage.register(function (c)
    local class = ""
    local name = ""
    if c.class then
    class = c.class:lower()
    end
    if c.name then
    name = c.name:lower()
    end
    -- Create border
    c.border_width = beautiful.border_width
    c.border_color = beautiful.border_normal
    -- Add mouse bindings
    for f, keys in pairs(settings.bindings.mouse.client) do
    c:mouse_add(mouse(keys[1], keys[2], f))
    end
    -- Check if floating
    for app, i in pairs(settings.floating) do
    if class:find(app) or name:find(app) then
    c.floating = i
    break
    end
    end
    if name:find('urxvtcnotify') then
    -- I got sick of libnotify/notification-daemon
    -- and their dependencies, so I'm using a little
    -- urxvtc window with some text in it as notifications :P
    -- This makes it appear at the correct place,
    -- feel free to remove the whole section, you probably
    -- won't need it.
    c.screen = 3
    c:coords({
    x = 1680*2+1400,
    y = 18,
    width = 276,
    height = 106
    c.border_color = beautiful.border_normal
    local tags = {}
    for i,t in pairs(eminent.tags[3]) do
    if eminent.tag.isoccupied(3, t) then
    table.insert(tags, t)
    end
    end
    c:tags(tags)
    return 0
    end
    -- Focus new clients
    client.focus = c
    -- Prevent new windows from becoming master
    if not settings.new_become_master then
    awful.client.swap(1, c)
    end
    -- Don't honor size hints
    c.honorsizehints = false
    end)
    -- {{{ Arrange hook
    awful.hooks.arrange.register(function(s)
    -- Warp the mouse
    if settings.warp_mouse then
    mouse_warp()
    end
    -- Check focus
    if not client.focus then
    local c = awful.client.focus.history.get(s, 0)
    if c then client.focus = c end
    end
    end)
    -- vim: set filetype=lua fdm=marker tabstop=4 shiftwidth=4 expandtab smarttab autoindent smartindent nu:
    Last edited by Tim Fox (2008-09-20 18:15:15)

    andre.ramaciotti wrote:And I'm not sure if you should put that & after exec awesome. It works fine here without it.
    No & after entries in .xinitrc . You've commented out the awesome entry.

  • HT5772 How do you delete a movie from a local computer without deleting it from the library?  This should be such a simple procedure, but it's not. And while we're at it, why is iTunes NOT one of the dropdown product choices?

    All Apple support says about deleting movies from a computer is that you "should" be able to re-download it if you live in the right area.  Well, I'm in the U.S.A. and just deleted one of the movie extra features exactly as described in the support directions.  According to Apple I should be able to re-download this from the cloud at any time, but now I no longer even see the title listed.  That's why I wanted to test their support statements with a Movie Extra instedad of a real movie.  This should be the simplest of tasks to manage, yet they make it extremely difficult.  Why?  I own the movies and I want them to stay in my iTunes library basically forever.  Makes sense, right?  But, I only have so much room on my laptop to store movies that I want to have with me on long trips, etc.  So if I only have the space to store 3 or 4 movies on the disk, shouldn't I have the ability to every once in a while delete one of those movies from my local computer ONLY, NOT my library, so that I can download a different movie?  Yet the first thing iTunes does when you hit the delete key is tell you that it will remove the movie forever from all devices and the library.  So why does support say you can download again any time from the cloud then?  The worse part is, the calamity doesnt stop there.  Wait until you see the message you actually get once you say that yes, you do want to delete the movie (but only because you assume that you really can download it again sometime).  Here is the exact 2 messages you get from Apple, in the same popup box.
    Do you want to move the selected movie to the Recycle Bin, or keep it in the iTunes Media Folder?
    Only files in the iTunes Media Folder will be moved to the Recycle Bin.
    [Cancel]  [Move to the Recycle Bin]  [Keep File]
    Is that the most confusing popup or what?  Who develops this kind of software?!?!?! 
    I have tried it both ways and the only difference is that the file shows up in the Recycle Bin or doesn't.  But in both cases the file name no longer shows in the movie list, so I don't know how to re-download it from the Cloud.  Better hey, if I clicked "Keep File", where is it?  I can't see it anywhere, so where is it kept and what can I actually do with it?
    I have to be honest, I love my iPhone and some of the neat features, but when it comes to iTunes, I have never seen a more difficult piece of software to use in my life... and I'm a software developer.  Your Support documentation is actually more confusing than the softwae itself, it's almost as if you don't want people to use the software, just simply buy stuff and listen/watch it, but nothing else.  Seriously, this is the most cumbersome, unfriendly piece of software I've ever seen.  What does it say about Apple iTunes when everyone has to google solutions for how to do something rather than using Apple support documentation.
    Seriously disappointed in Apple iTunes and it's never really gotten any better over time.  This is one of the primary reasons I have never moved all of my recording studios and office operations over to an Apple platform.  Hardware and phones are awesome, but your software is either grossly incompetent or intentionally designed to make it all but impossible to use.  Either way, it's worthless to me. We're talking about software that does nothing else but manage media that I already own on multiple devices.  That should be one of the simplest things in the world to do.  Sad... very sad.
    While we're at it.... why isn't iTunes listed on the product dropdown below?  Maybe it's not even considered a product, which would explain it's goofiness I guess.

    I own the movies and I want them to stay in my iTunes library basically forever.
    But in both cases the file name no longer shows in the movie list, so I don't know how to re-download it from the Cloud.
    iTunes prefs > Store > Show iTunes in the Cloud purchases.
    This will show all your iTunes purchases in your library with a cloud icon down arrow. Click the icon to redownload or click on Play to stream without downloading.
    Also see this , -> Download past purchases
    and techncially, you don't "own" the movie, You simply have a license to use it.
    Yet the first thing iTunes does when you hit the delete key is tell you that it will remove the movie forever from all devices and the library.
    Actually, no it does not tell you that.
    FYI: You should keep copies of all yoru iTnue spurahses as the labels/movie studios/copyright owners can pull their product at anytime and it won't be available to redownload.
    Suggestions here -> http://www.apple.com/feedback/

  • Questions regarding xft fonts, and awesome wm

    Hi, I just tried ArchLinux yesterday and loving it!
    I use JWM, but am very interested in dwm/awesome wm. I do have some questions:
    1. On a thread in the forum, it is mentioned that dwm has no Xft support. How useful exactly is Xft? Would it impact on design work involving GIMP/Inkscape/Scribus?
    2. Does awesome have Xft support?
    3. I installed awesome, but I have no idea on what keys to use. The shortcuts are different from dwm. I tried to look for quick tutorial just to get the basics (dwm has one on their website), but seems like all documentation I found have none of that section and go straight to configuration.
    Do I actually have to configure the wm before I can use it at a very basic level?
    4. I would like to do some more comparison between wms, trying to find a good balance for me in regards of lightness and functions I need. However, I have no idea on what to use to keep track of cpu/memory usage for all the wms. What's a good way to do this?
    Thank you in advance.

    Welcome to Arch!
    1. The lack of xft support in dwm mostly just means that you won't get anti-aliased fonts in the status bar. Individual applications will still have the same font support they had before you used dwm.
    2. Awesome uses pango for font rendering, which is even better than xft.
    3. Look at the man page for default key bindings. It's more or less usable out of the box, but you will definitely want to customize it somehow.
    4. A good system monitor is htop. Install it from the repos and run it from a terminal.
    Last edited by fflarex (2009-02-23 18:44:45)

Maybe you are looking for