Thursday, September 19, 2013

Mac OSX Terminal: How to delete all files and folders in a folder

Simply type:
>rm -rfv *

... and press enter! Easy!

Wednesday, September 18, 2013

Widgets in silverstripe

A few pointers if you are also struggling with it.

  1. If the widgets are not clickable
    1. You probably haven't installed the widgets module correct. Try installing via composer
  2. If page is running out and returning nothing.
    1. Are you using a widget that has a Content field? In that case try renaming it to someting unique.
  3. Want to have multiple widget areas?
    1. Add as many as you like, but do add a tab for each like this:
      $fields->addFieldToTab("Root.MyWidgetArea", new WidgetAreaEditor("MyWidgetArea"));

When using Composer to install something, how do I know what version to use?

When installing stuff with Composer it usually asks what version you wanna use.

You can see the different versions available if you locate the package on https://packagist.org.

For instance, the widgets package.
https://packagist.org/packages/silverstripe/widgets

It has 2 versions:


  1. dev-master (almost always available)
  2. 0.1.x-dev (in this case a SS 3.0 compatible version)

silverstripe CMS 3.1.0 and composer

This was new to me, so I actually struggled quite a bit with this. Now I think I have it more or less under control.

Installing composer

Open up a Terminal window and fire this command:

curl -sS https://getcomposer.org/installer | php

You might need to apply -d detect_unicode=Off after the php like this:

curl -sS https://getcomposer.org/installer | php -d detect_unicode=Off

That if you don't wanna change your php.ini

Installing Git

Go to: http://git-scm.com/download/mac and download Git. Click it and click the pkg-file. Close your Terminal (cmd + q) and start it again. Write git and see that it works.

Using composer

Your silverstripe project has a composer.json file in the root. It might be empty.
I found this and pasted it into the file:

{
    "name": "silverstripe/installer",
    "description": "The SilverStripe Framework Installer",
    "require": {
        "php": ">=5.3.2",
        "silverstripe/cms": "*",
        "silverstripe/framework": "*",
        "silverstripe-themes/simple": "*"
    },
    "require-dev": {
        "silverstripe/compass": "*",
        "silverstripe/docsviewer": "*"
    },
    "minimum-stability": "dev"
}

In order to install, say silverstripe widgets I used this command:

> composer require silverstripe/widgets

You will be asked for a version, I chose dev-master (being the latest and greatest).
I actually had a hard time working out how the versioning works. But dev-master worked for me.

Wednesday, September 4, 2013

MAMP 5.2+5.4 and PHP 5.5 from Liip

Some things require different versions of PHP. Thats why I have to run a number of different versions.

Install PHP 5.5 with this command:
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

From the site: http://php-osx.liip.ch/

Then you have to change some settings in the httpd file. (/private/etc/apache2/httpd.conf). You might need to enable the php5 module.

Start your apache server with the command: sudo apachectl start
... and stop it again with sudp apachectl stop.

Local mysql (not the MAMP one) can be started and stopped with:

/usr/local/mysql/support-files/mysql.server start    (and stop for stopping)

If MAMP services wont start you can try to run the sh scripts in /Applications/MAMP/bin/
Run sh with the command:
> sh stopMysql.sh

This will tell if it worked and also the location of the log file to look for any errors.


Monday, October 22, 2012

Fix Time Machine Sparsebundle NAS Based Backup Errors

Probably the most important post on this topic! Thank you!

Snippet: "This is a modification of an original post for use when you have a corrupt sparsebundle backup on a NAS (as opposed to an external drive attached to a router) and it needs to be repaired. The NAS is likely a hardware product from the likes of Netgear, Synology, Buffalo or QNap – or for those of us with a home-grown backup server running FreeNAS.The error you may see is “Time Machine completed a verification of your backups. To improve reliability, Time Machine must create a new backup for you.” This can be fixed by following the below.From your Mac, connect to the network share that houses the sparsebundle.At the top level of the drive are the various sparsebundles that make up your individual computer backups.Do not double click on these sparsebundles or try to repair with Disk Utility.Open Terminal and then switch to root by typing"

Mac OSX Terminal : How to use VI editor


The vi editor is available on almost all Unix systems. vi can be used from any type of terminal because it does not depend on arrow keys and function keys--it uses the standard alphabetic keys for commands.
vi (pronounced "vee-eye") is short for "vi"sual editor. It displays a window into the file being edited that shows 24 lines of text. vi is a text editor, not a "what you see is what you get" word processor. vi lets you add, change, and delete text, but does not provide such formatting capabilities as centering lines or indenting paragraphs.
This help note explains the basics of vi:
  • opening and closing a file
  • moving around in a file
  • elementary editing
vi has many other commands and options not described here. The following resources can help you get started using the vi editor, and are available at the UW University Book Store:
  • "vi Tutorial." Specialized Systems Consultants (SSC).
  • "vi Reference." Specialized Systems Consultants (SSC).
  • "Learning the vi Editor." Linda Lamb, 1990.

Starting vi

You may use vi to open an already existing file by typing
      vi filename
where "filename" is the name of the existing file. If the file is not in your current directory, you must use the full pathname.
Or you may create a new file by typing
      vi newname
where "newname" is the name you wish to give the new file.
To open a new file called "testvi," enter
      vi testvi
On-screen, you will see blank lines, each with a tilde (~) at the left, and a line at the bottom giving the name and status of the new file:
~
      "testvi" [New file]

vi Modes

vi has two modes:
  • command mode
  • insert mode
In command mode, the letters of the keyboard perform editing functions (like moving the cursor, deleting text, etc.). To enter command mode, press the escape <Esc> key.
In insert mode, the letters you type form words and sentences. Unlike many word processors, vi starts up in command mode.

Entering Text

In order to begin entering text in this empty file, you must change from command mode to insert mode. To do this, type
      i
Nothing appears to change, but you are now in insert mode and can begin typing text. In general, vi's commands do not display on the screen and do not require the Return key to be pressed.
Type a few short lines and press <Return> at the end of each line. If you type a long line, you will notice the vi does not word wrap, it merely breaks the line unceremoniously at the edge of the screen.
If you make a mistake, pressing <Backspace> or <Delete> may remove the error, depending on your terminal type.

Moving the Cursor

To move the cursor to another position, you must be in command mode. If you have just finished typing text, you are still in insert mode. Go back to command mode by pressing <Esc>. If you are not sure which mode you are in, press <Esc> once or twice until you hear a beep. When you hear the beep, you are in command mode.
The cursor is controlled with four keys: h, j, k, l.
     Key        Cursor Movement
     ---        ---------------
     h        left one space
     j        down one line
     k        up one line
     l        right one space
When you have gone as far as possible in one direction, the cursor stops moving and you hear a beep. For example, you cannot use l to move right and wrap around to the next line, you must use j to move down a line. See the section entitled "Moving Around in a File" for ways to move more quickly through a file.

Basic Editing

Editing commands require that you be command mode. Many of the editing commands have a different function depending on whether they are typed as upper- or lowercase. Often, editing commands can be preceded by a number to indicate a repetition of the command.

Deleting Characters

To delete a character from a file, move the cursor until it is on the incorrect letter, then type
      x
The character under the cursor disappears. To remove four characters (the one under the cursor and the next three) type
     4x
To delete the character before the cursor, type
      X (uppercase)

Deleting Words

To delete a word, move the cursor to the first letter of the word, and type
      dw
This command deletes the word and the space following it.
To delete three words type
       3dw

Deleting Lines

To delete a whole line, type
       dd
The cursor does not have to be at the beginning of the line. Typing dd deletes the entire line containing the cursor and places the cursor at the start of the next line. To delete two lines, type
       2dd
To delete from the cursor position to the end of the line, type
       D (uppercase)

Replacing Characters

To replace one character with another:
  1. Move the cursor to the character to be replaced.
  2. Type r
  3. Type the replacement character.
The new character will appear, and you will still be in command mode.

Replacing Words

To replace one word with another, move to the start of the incorrect word and type
     cw
The last letter of the word to be replaced will turn into a $. You are now in insert mode and may type the replacement. The new text does not need to be the same length as the original. Press <Esc> to get back to command mode. To replace three words, type
     3cw

Replacing Lines

To change text from the cursor position to the end of the line:
  1. Type C (uppercase).
  2. Type the replacement text.
  3. Press <Esc>.

Inserting Text

To insert text in a line:
  1. Position the cursor where the new text should go.
  2. Type i
  3. Enter the new text.
The text is inserted BEFORE the cursor.
4. Press <Esc> to get back to command mode.

Appending Text

To add text to the end of a line:
  1. Position the cursor on the last letter of the line.
  2. Type a
  3. Enter the new text.
This adds text AFTER the cursor.
4. Press <Esc> to get back to command mode.

Opening a Blank Line

To insert a blank line below the current line, type
  • (lowercase)
To insert a blank line above the current line, type
     O (uppercase)

Joining Lines

To join two lines together:
  1. Put the cursor on the first line to be joined.
  2. Type J
To join three lines together:
  1. Put the cursor on the first line to be joined.
  2. Type 3J

Undoing

To undo your most recent edit, type
     u
To undo all the edits on a single line, type
     U (uppercase)
Undoing all edits on a single line only works as long as the cursor stays on that line. Once you move the cursor off a line, you cannot use U to restore the line.

Moving Around in a File

There are shortcuts to move more quickly though a file. All these work in command mode.
     Key            Movement
     ---            --------
     w            forward word by word
     b            backward word by word
     $            to end of line
     0 (zero)     to beginning of line
     H            to top line of screen
     M            to middle line of screen
     L            to last line of screen
     G            to last line of file
     1G           to first line of file
     <Control>f   scroll forward one screen
     <Control>b   scroll backward one screen
     <Control>d   scroll down one-half screen
     <Control>u   scroll up one-half screen

Moving by Searching

To move quickly by searching for text, while in command mode:
  1. Type / (slash).
  2. Enter the text to search for.
  3. Press <Return>.
The cursor moves to the first occurrence of that text.
To repeat the search in a forward direction, type
     n
To repeat the search in a backward direction, type
     N

Closing and Saving a File

With vi, you edit a copy of the file, rather than the original file. Changes are made to the original only when you save your edits.
To save the file and quit vi, type
     ZZ
The vi editor editor is built on an earler Unix text editor called ex. ex commands can be used within vi. ex commands begin with a : (colon) and end with a <Return>. The command is displayed on the status line as you type. Some ex commands are useful when saving and closing files.
To save the edits you have made, but leave vi running and your file open:
  1. Press <Esc>.
  2. Type :w
  3. Press <Return>.
To quit vi, and discard any changes your have made since last saving:
  1. Press <Esc>.
  2. Type :q!
  3. Press <Return>.

Command Summary

STARTING vi
     vi filename    edit a file named "filename"
     vi newfile     create a new file named "newfile"
ENTERING TEXT
     i            insert text left of cursor
     a            append text right of cursor
MOVING THE CURSOR
     h            left one space
     j            down one line
     k            up one line
     l            right one space
BASIC EDITING
     x         delete character
     nx        delete n characters
     X         delete character before cursor
     dw        delete word
     ndw       delete n words
     dd        delete line
     ndd       delete n lines
     D         delete characters from cursor to end of line
     r         replace character under cursor
     cw        replace a word
     ncw       replace n words
     C         change text from cursor to end of line
     o         insert blank line below cursor
                  (ready for insertion)
     O         insert blank line above cursor
                  (ready for insertion)
     J         join succeeding line to current cursor line
     nJ        join n succeeding lines to current cursor line
     u         undo last change
     U         restore current line
MOVING AROUND IN A FILE
     w            forward word by word
     b            backward word by word
     $            to end of line
     0 (zero)     to beginning of line
     H            to top line of screen
     M            to middle line of screen
     L            to last line of screen
     G            to last line of file
     1G           to first line of file
     <Control>f   scroll forward one screen
     <Control>b   scroll backward one screen
     <Control>d   scroll down one-half screen
     <Control>u   scroll up one-half screen
     n            repeat last search in same direction
     N            repeat last search in opposite direction
CLOSING AND SAVING A FILE
     ZZ            save file and then quit
     :w            save file
     :q!            discard changes and quit file