Skip to content

Instantly share code, notes, and snippets.

View kishikawakatsumi's full-sized avatar
🏠
Working from home

Kishikawa Katsumi kishikawakatsumi

🏠
Working from home
View GitHub Profile
@kishikawakatsumi
kishikawakatsumi / UIScrollView+UIPageControl.swift
Created April 29, 2018 15:21
UIScrollView + UIPageControl with RxSwift
import RxSwift
import RxCocoa
fileprivate extension Reactive where Base: UIScrollView {
fileprivate var currentPage: Observable<Int> {
return didEndDecelerating.map({
let pageWidth = self.base.frame.width
let page = floor((self.base.contentOffset.x - pageWidth / 2) / pageWidth) + 1
return Int(page)
})
@kishikawakatsumi
kishikawakatsumi / OptionParser.swift
Created April 5, 2018 15:57
SwiftPM ArgumentParser usage
let parser = ArgumentParser(commandName: "swiftfmt", usage: "swiftfmt filename [options]", overview: "Format Swift source code")
let filenameArgument = parser.add(positional: "filename", kind: String.self)
let configrationOption = parser.add(option: "--configuration", kind: String.self)
let versionOption = parser.add(option: "--version", kind: Bool.self)
let verboseOption = parser.add(option: "--verbose", kind: Bool.self, usage: "Show more debugging information")
let result = try parser.parse(Array(CommandLine.arguments.dropFirst()))
if let version = result.get(versionOption) {
print("Swiftfmt 0.1.0")
@kishikawakatsumi
kishikawakatsumi / Info.plist
Created October 5, 2016 05:02
NSAllowsArbitraryLoads=YES on debug build
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>

Keybase proof

I hereby claim:

  • I am kishikawakatsumi on github.
  • I am kishikawakatsumi (https://keybase.io/kishikawakatsumi) on keybase.
  • I have a public key whose fingerprint is BE27 F270 E0AB 074F 5673 354D 5DB1 8678 5A47 C1FF

To claim this, I am signing this object:

@kishikawakatsumi
kishikawakatsumi / ReorderingRealmListInTableView.swift
Created July 27, 2016 04:59
Reorder Realm List in UITableView
import UIKit
import RealmSwift
class Data: Object {
dynamic var name = ""
...
}
class DataWrapper: Object {
let list = List<Data>()
@kishikawakatsumi
kishikawakatsumi / ReorderingRealmResultsInTableView.swift
Created July 27, 2016 04:51
Reorder Realm Results in UITableView
import UIKit
import RealmSwift
class Data: Object {
dynamic var name = ""
...
dynamic var order = 0 // 並べ替えのためのカラムが必要
}
@kishikawakatsumi
kishikawakatsumi / gist:be87a6bf6992f815aa18
Created March 31, 2015 09:08
Register custom download font
#import "ViewController.h"
@import CoreText;
@interface ViewController ()
@end
@implementation ViewController
@kishikawakatsumi
kishikawakatsumi / .travis.yml
Last active August 29, 2015 13:56
.travis.yml for Ubiregi iPad App
language: objective-c
cache:
directories:
- vendor/bundle
- Pods
install:
- bundle install --path=vendor/bundle --binstubs=vendor/bin
- bundle exec pod install
script:
- '[ ! -z $(echo ${TRAVIS_BRANCH} | grep "^release.*$") ] && CONFIG=release || CONFIG=adhoc'
@kishikawakatsumi
kishikawakatsumi / Rakefile
Last active August 29, 2015 13:56
Rakefile for testing, building and uploading to Testflight/Crittercism
require "rubygems/version"
require "rake/clean"
require "date"
require 'time'
require "json"
require "open3"
# Application info
APP_NAME = "Ubiregi2"
SDK = "iphoneos"
@kishikawakatsumi
kishikawakatsumi / main.m
Created January 14, 2014 18:52
One-line fix for UITextView on iOS 7
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char * argv[])
{
@autoreleasepool {
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"UIDisableLegacyTextView"];
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));