HUOM! Voit itse lisätä ja muuttaa sisältöä muokkaa-painikkeiden avulla

 Olet itse vastuussa tämän teoksen käytöstä aiheutuvista vahingoista Lue lisää.

OSX ohjelmia

Kohteesta Wikikko - kansan taitopankki
Loikkaa: valikkoon, hakuun

Safari[muokkaa]

Safari välilehtien tallentaminen[muokkaa]

Ohjelma on kirjoitettu AppleScriptillä yhdistämällä kaksi eri välilehtien tallennustapaa. Ohjelma tallentaa Safari-selaimen välilehdet tekstitiedostoksi ja kysyy tallennetaanko myös skriptitiedostoksi, jota kaksoisklikkaa välilehdet aukeavat.

  • Tallenna ohjelma Ohjelmat > Lisäohjelmat > AppleScript-editori -ohjelmaan ja voit käyttää sitä Suorita painikkeesta.
  • Jos haluat tehdä siitä suoritettavan ohjelman esimerkiksi Dock:iin.
    • AppleScript-editori > Arkisto > Vie... > Tiedostomuoto: Ohjelma, Vain suoritus > Tallenna
-- Tallentaa selaimen välilehdet tekstitiedostoksi ja linkit avaavaksi ohjelmaksi
--
-- Jos haluat että pääteohjelma sulkeutuu linkkiskriptitiedoston suorittamisen jälkeen:
-- Pääte > Asetukset... > Asetukset > Komentotulkki > Komentotulkin lopettaessa > Sulje, jos komentotulkki lopetti virheettömästi
--
-- Määritellään otsikko tekstitiedoston sisään
property report_Title : "Safari välilehdet"
-- Määritellään oletustiedostonimi
property report_SaveName : "Safari_välilehdet_"

-- Valmistellaan luettelo tekstitiedostoa varten ja määritellään otsikko päivämäärällä
set url_list to {}
set the date_stamp to ((the current date) as string)
set NoteTitle to report_Title & " | " & the date_stamp

-- Haetaan välilehdet päällimmäisestä selainikkunasta
tell application "Safari"
	activate
	try
		set safariWindow to window 1
		repeat with w in safariWindow
			try
				repeat with t in (tabs of w)
					set TabTitle to (name of t)
					set TabURL to (URL of t)
					set TabInfo to ("" & TabTitle & return & TabURL & return & return)
					copy TabInfo to the end of url_list
				end repeat
			end try
		end repeat
		-- Ilmoitetaan jos selainikkuna on tyhjä ja Dockissa
	on error
		display dialog "Tallennettavia sivuja ei löytynyt" buttons {"Sulje"}
		return
	end try
end tell

-- Muunnetaan osoitteet tekstiksi
set old_delim to AppleScript's text item delimiters
set AppleScript's text item delimiters to return
set url_list to (NoteTitle & return & return & return & url_list) as text
set AppleScript's text item delimiters to old_delim

-- Oletetaan päällimmäisessä Finderissa aukioleva hakemisto oletushakemistoksi tai
-- jos Finder ei ole auki, asetetaan oletukseksi työpöytä mihin tiedostot tallennetaan
try
	tell application "Finder" to set defaultFolder to the folder of the front window
on error
	set defaultFolder to (path to desktop)
end try

-- Pyydetään tiedostonimi ja tallennuskohde 
tell application "Finder"
	activate
	set save_File to choose file name with prompt "Anna tallennettavan tiedoston nimi" default name report_SaveName default location (defaultFolder as alias)
end tell

-- Otetaan talteen nimi linkkiskriptitiedoston mahdollista tallennusta varten
set scriptAlias to (save_File & "_AVAA_SELAIMESSA" as string)

-- Tallennetaan tekstitiedosto
tell application "System Events"
	set save_File to open for access (save_File & ".txt" as string) with write permission
	try
		write url_list to save_File
	end try
	close access save_File
end tell

-- Kysytään tallennetaanko myös linkkiskriptitiedosto
activate
set question to display dialog "Tallennetaanko myös selaimessa avattavana tiedostona?" buttons {"Kyllä", "Ei"} default button 1
set answer to button returned of question

if answer is equal to "Kyllä" then
	-- Määritellään linkkiskriptitiedosto
	set cmd to "#!/bin/bash" & linefeed & "# " & NoteTitle & linefeed & linefeed
	
	-- Lisätään linkit suoritettavina komentoina tiedostoon avoimesta selainikkunasta
	tell application "Safari"
		activate
		set n to count of tabs in window 1
		repeat with i from 1 to n
			set cmd to cmd & "# " & name of tab i of front window & linefeed & "open -g " & URL of tab i of front window & linefeed & linefeed
		end repeat
		set cmd to cmd & "exit 0"
	end tell
	
	-- Tallennetaan linkkiskriptitiedosto
	set scriptPath to POSIX path of scriptAlias
	set scriptFile to open for access scriptAlias with write permission
	set eof scriptFile to 0
	write cmd to scriptFile starting at eof
	close access scriptFile
	
	-- Muunnetaan tiedosto-oikeudet niin että linkkiskriptitiedosto aukeaa kaksoisklikatessa tiedostoa
	do shell script "chmod 777 " & scriptPath
	do shell script "xattr -wx com.apple.FinderInfo '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00' " & scriptPath
end if
http://veritrope.com/code/export-all-safari-tabs-to-a-text-file
http://www.leancrew.com/all-this/2012/10/saving-browser-tab-sets