iTerm2 не вставляє нові рядки для довгих фрагментів коду


1

У мене є проблеми з iTerm2, які не вставляють нові рядки, коли я копію певне число рядків і вставляю його в будь-який інтерпретатор. Наприклад, якщо я копію код нижче і вставляю його в інтерпретатор R, всі рядки згортаються, і це вимикається (аналогічно, якщо я вставляю рядок в інтерпретатор Python).

Однак це працює, якщо я вставляю рядок у bash; він також працює, якщо я вставляю його в інтерпретатор в Terminal.app (і pbcopy/pbpaste правильно реєструє нові рядки), тому має бути проблема з iTerm2. Будь-яка допомога оцінюється.

gibbs <- function(theta.0, data, burnin=.25*niters, niters=1e3) {
  # Sample using Gibbs.
  #
  # Args:
  #   theta.0: Starting value.
  #   data: list with x and y
  #   burnin: Number of initial samples to throw away.
  #   niters: Number of desired iterations.
  #
  # Returns:
  #   Matrix with (niters-burnin) columns being samples under the target
  #   distribution.
  library(mvtnorm)
  # Declare constants.
  n <- length(data$y)
  X <- cbind(rep(1, length(data$x)), data$x)
  # Initialize output.
  theta.out <- matrix(rep(NA, (n+2)*(burnin+niters)), nrow=n+2)
  # Initialize proposals.
  beta.props <- t(rmvnorm(burnin+niters, mean=rep(0,2), sigma=solve(t(X)%*%X)))
  z.props <- matrix(abs(rnorm(n*(burnin+niters), mean=0, sd=1)), nrow=n)
  z.props[data$y == 0, ] <- -z.props[data$y == 0, ]
  # Initialize parameters.
  beta.old <- theta.0[1:2]
  z.old <- theta.0[3:(n+2)]
  for (i in 1:(burnin+niters)) {
    beta.new <- solve(t(X)%*%X)%*%t(X)%*%z.old + beta.props[, i]
    z.new <- X%*%beta.new + z.props[, i]
    # Save the draw.
    theta.out[, i] <- c(z.new, beta.new)
    beta.old <- beta.new
    z.old <- z.new
  }
  # Remove the burn-in samples.
  theta.out[, -(1:burnin)]
}

Відповіді:


0

iTerm2 розбиває великий текст на шматки, а потім надсилає ці шматки з невеликою затримкою. Це відбувається тому, що iTerm2 має дуже невелику затримку за замовчуванням.

Щоб виправити велике вставлення тексту, ви можете змінити розмір шматка і параметри затримки за допомогою defaults команду. Просто запустіть команди нижче в iTerm2:

defaults write com.googlecode.iterm2 QuickPasteBytesPerCall -int 1024
defaults write com.googlecode.iterm2 QuickPasteDelayBetweenCalls -float 0.08
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.