xLanguage
Well, just found xLanguage plugin for WordPress, works pretty well. I’m happy to have it :) xLanguage website
Well, just found xLanguage plugin for WordPress, works pretty well. I’m happy to have it :) xLanguage website
Kopiowanie i przenoszenie plików w oknie Findera, tylko że do tego potrzeba 2 okienek, tak najlepie, wtedy widać co się gdzie przenosi. Albo można otworzyć okienka jedno po drugim i najlepiej równo ustawić, żeby wszystko bylo widać, albo łatwiej, użyć 2finder :)
Jeden klik i otwierają się dwa okna findera, horyzontalnie lub wertykalnie.
www.macupdate.com/info.php/id/22400/2finder
Znowu zapomniałem jak to się robiło więc lepiej sobie zapiszę ku pamięci.
cd ~/Library/Application\ Support/TextMate/Bundles/
git clone git://github.com/sbenhaim/tm-ctags-tmbundle.git Ctags.tmbundle
Odświeżenie listy
wygenerowanie nowych tagów
⌥⌘P Update Tags
ewentualne wykluczenia plików podczas budowania listy tagów.
⌘,

Domyślnie używam Find in Project w Textmate ale przy wielu plikach i katalogach jest strasznie wolny no a czasem zdaża się zawisnąć na dobre.
Wtedy tylko restart IDE. Inny sposób podsunięty przez kolege to ACK. No to heja.
cd ~/Library/Application\ Support/TextMate/Bundles
git clone git://github.com/protocool/ack-tmbundle.git Ack.tmbundle
Inne GUI oczywiście ale oprócz tego muszę stwierdzić że ACK to dobry wybór, działa o wiele szybciej.
Find in Project

ACK

Używając Textmate i pracując z SVN dobrze widzieć na bieżąco, status plików w projekcie nad którym pracujemy. Tak jakoś przyzwyczajenie z Eclipse, zawsze było dlaczego nie ma być i w Textmate ? No defaultowo nie ma ale można zainstalować plugin. Próbowałem SVNMate ale po ostatnich aktualizacjach OSX niestety przestał działać, nie mam pojęcia dlaczego a logi systemowe niewiele w tym przypadku mówią. No to wziąłem kolejny plugin, ProjectPlus. Po kilku nieudanych instalacjach w końcu udało mi się dostać działającą wersję .dmg
ProjectPlus-1.3.dmg niestety jest ona w konflikcie z SVNMate, który to plugin musiałem usunąć. No ale czego się nie robi dla wygody.
Działa fajnie :)
Mała poprawka, działało fajnie, niestety strasznie zaczęło zamulać, wniosek:
Textmate 1.5.9 + Project Plus v1.3 + Leopard 10.5.8 Nie działa poprawnie, pomimo że i wersja IDE i wersja pluginu wspierają tą wersję OSX.
Rozwiązanie:
Textmate 1.5.8 + Project Plus v1.3 + Leopard 10.5.8 Działa fajnie, chociaż fakt że nie mam najnowszej wersji IDE trochę mnie irytuje.
![]()
Świetny tool dla webdeveloperów, kiedy trzeba coś na szybko wyklikać w JQ. Działa super. Pobieramy paczkę JS i dopisujemy do kodu
<!-- Load jQuery and jQuery UI ( This line is still needed after deploying. ) --> <script type="text/javascript" src="jquery/jquery-plus-jquery-ui.js"></script> <!-- Load IxEdit ( You can delete these two lines after deploying. ) --> <script type="text/javascript" src="ixedit/ixedit.packed.js"></script> <link type="text/css" href="ixedit/ixedit.css" rel="stylesheet" /> <!-- Load Sample Style Sheet ( You can delete this line if you don't need it. ) --> <link type="text/css" href="sample-style/ui-sui.css" rel="stylesheet" />
wyskakyje okno edycji pozwalające na przypisanie konkretnego eventu praktycznie w dowolnym miejscu HTML’a.

po skończonej pracy wystarczy wygenerować kod JS, który podepniemy na stronę.

Super narzędzie, na safari wszystko działa od ręki na firefoxie trzeba doinstalować google gears , ale i tak warto :)
Zmiana w view jQuery API, nowa wersja nowy design :)
jQuery 1.2.6 visualjquery.com

jQuery 1.3 api.jquery.com/visual

jQuery 1.4 api.jquery.com/browser

no troszkę się design zmienił, jakoś wydaje mi się że te poprzednie wersje były nieco bardziej intuicyjne. Oczywiście można sobie zawsze wygenerować kodzik na własną rękę, z XML’a
XML’a
Nie można powiedzieć aby Safari mogło konkurować z Firefoxem pod względem ilości pluginów aczkolwiek ‘kilka’ można znaleźć. Tak czy inaczej jedna irytująca rzecz w Safari, mamy 20 otwartych tabów ze stronami zamykamy przeglądarkę i co ? wszystkie otwarte strony idą w niepamięć, tzn. nie do końca bo możemy je odtworzyć w historii ale o opcji automatycznego otworzenia ostatnio przeglądanych witryn możemy jedynie pomażyć. Jest to trochę irytujące. Żeby włączyć sobie taką funkcję musimy zainstalować plugin :) ForgetMeNot

przydatne jeśli chcemy na szybko wygenerować sobie listę wszystkich plików z katalogu i opakować w #filename
/**
* creating list.txt
* ls > list.txt
*/
//const input output file
define('__INPUT_FILE__', "list.txt");
define('__OUTPUT_FILE__', "lista.html");
//wrapper for each line of input file
define('__PRE__','<a href="');
define('__MIDDLE__','">');
define('__SUFFIX__','</a><br/>');
//read input file into array
$list = file(__INPUT_FILE__);
//open output file to write and set pointer at the end of file
//if file does no exist attempt to create one
$file = fopen(__OUTPUT_FILE__, "a+");
//write each line into file into wrapper const
foreach($list as $value)
{
$output = __PRE__ . $value . __MIDDLE__ . $value . __SUFFIX__;
fwrite($file, $output);
}
//close file after finished
fclose($file);
Iteracja po wszystkich elementach listy, zaznaczając miejsce w którym się aktualnie znajdujemy na czerwono.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>untitled</title>
<meta name="generator" content="TextMate http://macromates.com/">
<meta name="author" content="wadziu">
<!-- Date: 2010-03-09 -->
<script type="text/javascript" charset="utf-8" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<style type="text/css" media="screen">
.prev, .next {
cursor: pointer;
}
</style>
</head>
<body>
<div class="buttons">
<span class="prev">
prev
</span>
<span class="next">
next
</span>
</div>
<ul>
<li>uno</li>
<li>dwa</li>
<li>tri</li>
<li>quatro</li>
<li>five</li>
<li>six</li>
<li>sem</li>
<li>ojto</li>
<li>dziewięć</li>
<li>ostatni</li>
</ul>
</body>
</html>
<script type="text/javascript" charset="utf-8">
$().ready(function(){
//inicjalizacja zmiennej, iterujemy od zera ale ze wględu na inkrementację
//w linii 60 trzeba zainicjalizować zmienną o wartości -1
var next = -1;
$("span.next").click(function(){
if(next != -2 && next < 10)
{
//inkrementacja do następnego na liście
next++;
//kolor nastepnego na red, reszta rodzeństwa na black
$("ul li:eq(" + next + ")").css("color", "red");
$("ul li:eq(" + next + ")").siblings().css("color", "black");
}
//warunek graniczny, index na pierwszym elemencie
if(next == -2)
{
next = 0;
}
//warunek graniczny, index na ostatnim elemencie
if(next >= 10)
{
next = 9;
}
});
$("span.prev").click(function(){
if(next != -1 && next < 10)
{
//dekrementacja o jeden wcześniej na liście
--next;
//kolor poprzedniego na red, pozostałe black
$("ul li:eq(" + next + ")").css("color", "red");
$("ul li:eq(" + next + ")").siblings().css("color", "black");
}
//warunek graniczny, index na pierwszym elemencie
if(next == -1)
{
next = 0;
}
//warunek graniczny, index na ostatnim elemencie
if(next >= 10)
{
next = 9;
}
});
});
</script>