В копилку бадабумов. stackowerflow.com решил прилечь.
И stackexchange.com с ним напару.
Есть у меня на хозяйстве вот такой старичок — HP Compaq nx6125. 2006 года выпуска. Машинка качественная, хорошо подогнанная, для своего времени очень мощная. На данный момент ее хватает только чтоб серфить в инете да фильмочки смотреть оттуда же. Для этого, собственно, и пользуем ее. Есть у нее стандартная ноутбуковская фича — тачпад. С двумя кнопками. Одна из первых, насколько я помню, получила специальную Scroll Zone на тачпаде — специальная вертикальная зона в правой части окошка, перемещение пальца в которой рассматривается как прокрутка колеса скроллинга мыши. Фишка стандартная и далеко не часто используемая. If you have an iOS app, make sure you test it not only in iOS Simulator but on all the devices and releases that your app supports. Testing on more than one kind of device ensures that your app operates exactly as you thought it would, no matter which device it’s running on.
Important: Rigorously test your app on a variety of devices and iOS versions. Because different kinds of devices and iOS releases have different capabilities, it’s not sufficient to test your app on a device provisioned for development or the simulator. iOS Simulator doesn’t run all threads that run on devices, and launching apps on devices through Xcode disables some of the watchdog timers. At a minimum, test the app on all devices you support and have available. In addition, keep prior versions of iOS installed on devices for compatibility testing. If you don’t support certain devices or iOS versions, indicate this in the project target settings in Xcode, as described in “Setting Deployment Info.”
Fwd: Recipe for Bouillabaisse !2013/06/01 @Recipes #soup #fish #french
Удобная, кстати, фишка — напоминалки через email. Скорее всего есть уже полно таких инструментов, но еще один не помешает :)
РАСТИ, но РОС...
Корень рас(т)- пишется в глаголах расти, растить, вырастать, наращать и т.п. и во всех образованных от них словах, например: растение, произрастание, ращение, сращение, возраст и т. п., а также в слове отрасль;
корень рос(т)- пишется в прошедшем времени и в причастиях прошедшего времени от расти, например: рос, росла, росло, росший, вырос, выросший и т. п., а также в словах заросль, поросль, водоросль, недоросль, росток и в образованных от них словах.
#define LOC(__key__) [[NSBundle mainBundle] localizedStringForKey:(__key__) value:nil table:nil]
![]() | ||
| Буквенные таблицы Шульте — тренировка бокового зрения
|
:'<,'>s/\%V\(.*\)\%V/token1\1token2)/
AcademyEngravedLetPlain, AmericanTypewriter, AmericanTypewriter-Bold, AmericanTypewriter-Condensed, AmericanTypewriter-CondensedBold, AmericanTypewriter-CondensedLight, AmericanTypewriter-Light, AppleColorEmoji, AppleSDGothicNeo-Bold, AppleSDGothicNeo-Medium, Arial-BoldItalicMT, Arial-BoldMT, Arial-ItalicMT, ArialHebrew, ArialHebrew-Bold, ArialMT, ArialRoundedMTBold, Avenir-Black, Avenir-BlackOblique, Avenir-Book, Avenir-BookOblique, Avenir-Heavy, Avenir-HeavyOblique, Avenir-Light, Avenir-LightOblique, Avenir-Medium, Avenir-MediumOblique, Avenir-Oblique, Avenir-Roman, AvenirNext-Bold, AvenirNext-BoldItalic, AvenirNext-DemiBold, AvenirNext-DemiBoldItalic, AvenirNext-Heavy, AvenirNext-HeavyItalic, AvenirNext-Italic, AvenirNext-Medium, AvenirNext-MediumItalic, AvenirNext-Regular, AvenirNext-UltraLight, AvenirNext-UltraLightItalic, AvenirNextCondensed-Bold, AvenirNextCondensed-BoldItalic, AvenirNextCondensed-DemiBold, AvenirNextCondensed-DemiBoldItalic, AvenirNextCondensed-Heavy, AvenirNextCondensed-HeavyItalic, AvenirNextCondensed-Italic, AvenirNextCondensed-Medium, AvenirNextCondensed-MediumItalic, AvenirNextCondensed-Regular, AvenirNextCondensed-UltraLight, AvenirNextCondensed-UltraLightItalic, BanglaSangamMN, BanglaSangamMN-Bold, Baskerville, Baskerville-Bold, Baskerville-BoldItalic, Baskerville-Italic, Baskerville-SemiBold, Baskerville-SemiBoldItalic, BodoniOrnamentsITCTT, BodoniSvtyTwoITCTT-Bold, BodoniSvtyTwoITCTT-Book, BodoniSvtyTwoITCTT-BookIta, BodoniSvtyTwoOSITCTT-Bold, BodoniSvtyTwoOSITCTT-Book, BodoniSvtyTwoOSITCTT-BookIt, BodoniSvtyTwoSCITCTT-Book BradleyHandITCTT-Bold, ChalkboardSE-Bold, ChalkboardSE-Light, ChalkboardSE-Regular, Chalkduster, Cochin, Cochin-Bold, Cochin-BoldItalic, Cochin-Italic, Copperplate, Copperplate-Bold, Copperplate-Light, Courier, Courier-Bold, Courier-BoldOblique, Courier-Oblique, CourierNewPS-BoldItalicMT, CourierNewPS-BoldMT, CourierNewPS-ItalicMT, CourierNewPSMT, DevanagariSangamMN, DevanagariSangamMN-Bold, Didot, Didot-Bold, Didot-Italic, EuphemiaUCAS, EuphemiaUCAS-Bold, EuphemiaUCAS-Italic, Futura-CondensedExtraBold, Futura-CondensedMedium, Futura-Medium, Futura-MediumItalic, GeezaPro, GeezaPro-Bold, Georgia, Georgia-Bold, Georgia-BoldItalic, Georgia-Italic, GillSans, GillSans-Bold, GillSans-BoldItalic, GillSans-Italic, GillSans-Light, GillSans-LightItalic, GujaratiSangamMN, GujaratiSangamMN-Bold, GurmukhiMN, GurmukhiMN-Bold, Helvetica, Helvetica-Bold, Helvetica-BoldOblique, Helvetica-Light, Helvetica-LightOblique, Helvetica-Oblique, HelveticaNeue, HelveticaNeue-Bold, HelveticaNeue-BoldItalic, HelveticaNeue-CondensedBlack, HelveticaNeue-CondensedBold, HelveticaNeue-Italic, HelveticaNeue-Light, HelveticaNeue-LightItalic, HelveticaNeue-Medium, HelveticaNeue-UltraLight, HelveticaNeue-UltraLightItalic, HiraKakuProN-W3, HiraKakuProN-W6, HiraMinProN-W3, HiraMinProN-W6, HoeflerText-Black, HoeflerText-BlackItalic, HoeflerText-Italic, HoeflerText-Regular, Kailasa, Kailasa-Bold, KannadaSangamMN, KannadaSangamMN-Bold, MalayalamSangamMN, MalayalamSangamMN-Bold, Marion-Bold, Marion-Italic, Marion-Regular, MarkerFelt-Thin, MarkerFelt-Wide, Noteworthy-Bold, Noteworthy-Light, Optima-Bold, Optima-BoldItalic, Optima-ExtraBlack, Optima-Italic, Optima-Regular, OriyaSangamMN, OriyaSangamMN-Bold, Palatino-Bold, Palatino-BoldItalic, Palatino-Italic, Palatino-Roman, Papyrus, Papyrus-Condensed, PartyLetPlain, STHeitiSC-Light, STHeitiSC-Medium, STHeitiTC-Light, STHeitiTC-Medium, SinhalaSangamMN, SinhalaSangamMN-Bold, SnellRoundhand, SnellRoundhand-Black, SnellRoundhand-Bold, Symbol, TamilSangamMN, TamilSangamMN-Bold, TeluguSangamMN, TeluguSangamMN-Bold, Thonburi, Thonburi-Bold, TimesNewRomanPS-BoldItalicMT, TimesNewRomanPS-BoldMT, TimesNewRomanPS-ItalicMT, TimesNewRomanPSMT, Trebuchet-BoldItalic, TrebuchetMS, TrebuchetMS-Bold, TrebuchetMS-Italic, Verdana, Verdana-Bold, Verdana-BoldItalic, Verdana-Italic, ZapfDingbatsITC, Zapfino

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void) {
// Your code
dispatch_async(dispatch_get_main_queue(), ^(void) {
// Now you can interact with the UI
});
});
+ (MyClass *)sharedClass {
static MyClass *_shared = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
_shared = [[MyClass alloc] init];
});
return _shared;
}

if (NSClassFromString(@"SKStoreProductViewController")) { // Класс существует, значит мы в iOS 6+ SKStoreProductViewController *storeController = [[SKStoreProductViewController alloc] init]; …. } else { // Нет такого класса - значит мы на старом корыте }

#define LOGRect(x) NSLog(@"Logging Rect %s: %@", (#x), NSStringFromCGRect(x))
#вывод всех изменений, кроме не контролируемых alias svnm='svn stat | egrep -v "^(\? )"' #варианты для апдейта ;) alias svnup='svn up' alias svnupcheg='svnup' alias svnupchik='svnup'Добавить в файл ~/.bashrc или ~/.profile (в Mac OS) и пользовать по надобности
sudo installer -pkg filename.pkg -target /
mkdir -p ~/work/project/tags/rc1 svn add ~/work/project/tags/rc1 svn ci -m "rc1 tag added" ~/work/project/tags/rc1 svn copy -m "Some comment" https://svn.server:port/svn/currentProject/trunk/ https://svn.server:port/svn/currentProject/tags/rc1/ svn upДля создания бранча последовательность аналогична:
mkdir -p ~/work/project/branches/camelStyleInvolving svn add ~/work/project/branches/camelStyleInvolving svn ci -m "rc1 tag added" ~/work/project/branches/camelStyleInvolving svn copy -m "Some comment" https://svn.server:port/svn/currentProject/trunk/ https://svn.server:port/svn/currentProject/branches/camelStyleInvolving/ svn upДля переключения локальной копии репозитория в нужный бранч/тэг нужно выполнить следующую команду в директории, соответствующей основной ветке (в данном случае это ~/work/project/):
cd ~/work/project/trunk svn switch https://svn.server:port/svn/currentProject/branches/camelStyleInvolving/ ./указание текущей директории "./" можно опустить, но лучше ее указывать явно, чтобы избежать неприятных промахов. При этом в локальную копию транка помещаются файлы из бранча. То есть, для среды разработки пути и расположение файлов не изменяется. Меняется только их содержимое. Ну, и чтобы вспомнить в какой ветке сейчас находится локальная версия репозитория, можно использовать команду svn info:
svn infoЭти действия предполагают работу в консоли bash. Подобные действия можно производить и в консоли Windows-окружения. Для графического интерфейса действия зависят от используемого SVN-клиента.
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plistОстановка Jenkins:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
#ifndef DLog #ifdef DEBUG #define DLog(_format_, ...) NSLog([NSString stringWithFormat:@"%s: %@", __PRETTY_FUNCTION__, (_format_)], ## __VA_ARGS__) #else #define DLog(_format_, ...) #endif #endifОн автоматом добавляет к строке лога имя функции и номер строки в исходнике. Ну и заодно можно отключить логи одним андефайном. Заменить, например #ifdef DEBUG на #ifdef DEBUG1
#ifdef DEBUG #define DLog( s, ... ) NSLog( @"%@%s:(%d)> %@", [[self class] description], __PRETTY_FUNCTION__ , __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__] ) #define DAssert(A, B, ...) NSAssert(A, B, ##__VA_ARGS__); #define DLogv( var ) NSLog( @"%@%s:(%d)> "# var "=%@", [[self class] description], __PRETTY_FUNCTION__ , __LINE__, var ] ) #elif DEBUG_PROD #define DLog( s, ... ) NSLog( @"%@%s:(%d)> %@", [[self class] description], __PRETTY_FUNCTION__ , __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__] ) #define DLogv( var ) NSLog( @"%@%s:(%d)> "# var "=%@", [[self class] description], __PRETTY_FUNCTION__ , __LINE__, var ] ) #define DAssert(A, B, ...) NSAssert(A, B, ##__VA_ARGS__); #else #define DLog( s, ... ) #define DAssert(...) #define DLogv(...) #endifИнтересно отметить: наткнулся в сети на вопрос почему именно _DLog_, а не, скажем, ALog, MLog?.. Оказывается, что в используемых на данный момент в Xcode фреймворках нет классов, начинающихся с DL. Потому это относительно безопасный префикс для избежания перекрытия классов.
#криптование openssl enc -in <input_file_name> -out <output_file_name> -blowfish #раскриптование openssl enc -d -in <input_file_name> -out <output_file_name> -blowfish
#криптование openssl <cyphername, i.e. bf> -in <input_file_name> -out <output_file_name> #раскриптование openssl <cyphername, i.e. bf> -d -in <input_file_name> -out <output_file_name>